小编pol*_*nts的帖子

重复变异代码(组合学)?

有没有人有Java代码来生成所有VARIATIONS WITH REPETITION?

有大量的排列和组合示例可供使用,变化必须是最简单的...浪费时间重新发明轮子感觉很愚蠢(必须为此编写大量代码).

VARIATIONS WITH REPETITION的一个例子可能是这样的:

(tupletSize=3, input= A, B)
AAA, AAB, ABA, BAA, ABB, BAB, BBA, BBB
Run Code Online (Sandbox Code Playgroud)

谢谢!

java algorithm recursion combinatorics

2
推荐指数
1
解决办法
7506
查看次数

迭代器性能合同(并用于非收集)

如果你所做的只是一次简单的一次迭代(即只有,hasNext()而且next()没有remove()),你能保证线性时间性能和/或每次操作的摊销不变成本吗?

这是在Iterator合同中指定的吗?

是否存在Collection无法在线性时间内迭代的数据结构/ Java ?

java.util.Scanner implements Iterator<String>.A Scanner几乎不是数据结构(例如remove(),完全没有意义).这被认为是设计上的错误吗?

是否PrimeGenerator implements Iterator<Integer>被视为糟糕的设计,或者这究竟Iterator是为了什么?(hasNext()总是返回true,next()按需计算下一个数字,remove()没有意义).

同样,它有意义java.util.Random implements Iterator<Double>吗?

如果一个类型实际上Iterator只使用其三分之一的API,那么它应该真正实现吗?(即不remove(),总是hasNext())

java performance iterator

2
推荐指数
1
解决办法
409
查看次数

随便引用Java中的方法时的命名约定

是否有Java约定来引用方法,static否则,任何特定的一个或整个重载等?

例如

  • String.valueOf - 指的是所有的重载 static valueOf
    • String.valueOf(char) - 特定的重载,形式参数名称省略?
  • String.split - 看起来像一个静态方法,但实际上是一个实例方法
    • 也许aString.split是惯例?
    • 或许String().split
  • String#split - 我也看过这个HTML锚形式,我猜这是受javadoc影响的

是否有关于如何清楚地提及这些事情的权威建议?

java naming-conventions

2
推荐指数
1
解决办法
339
查看次数

为 NavigableMap 编写同步线程安全包装器

java.util.Collections目前提供以下实用方法来synchronized为各种集合接口创建包装器:

类似地,它也有6个unmodifiedXXX重载。

这里明显遗漏的是 的实用方法NavigableMap<K,V>。确实如此extends SortedMap,但 、 和 也是如此SortedSet extends Set,并且Set extends Collection和都有Collections专用的实用方法。大概是一个有用的抽象,否则它一开始就不会存在,但还没有实用的方法。SortedSetSetNavigableMap

所以问题是:

  • 是否有特定原因Collections不提供实用方法NavigableMap
  • 您将如何编写自己的synchronized包装器NavigableMap
    • 浏览OpenJDK 版本的源代码Collections.java似乎表明这只是一个“机械”过程
      • 一般来说,您是否可以synchronized像这样添加线程安全功能?
      • 如果是这样一个机械过程,可以自动化吗?(Eclipse插件等)
      • 这段代码重复是否必要,或者是否可以通过不同的 OOP 设计模式来避免?

java collections synchronization design-patterns wrapper

2
推荐指数
1
解决办法
4286
查看次数

如何使用java将此字符串转换为二维数组

我有文本文件

    0B85     61
    0B86     6161
    0B86     41
    0B87     69
    0B88     6969
    0B88     49
    0B89     75
    0B8A     7575
    0B8F     6565
Run Code Online (Sandbox Code Playgroud)

我想把这个字符串写成二维数组.(即)String read[0][0]=0B85String read[0][1]=61.请使用java建议任何想法.提前致谢.

java

2
推荐指数
1
解决办法
4142
查看次数

形式参数类型声明中double ...和double []之间的区别

我有疑问:这两个声明有什么区别?

 public static void printMax(double... numbers) { ... }

 public static void printmax(double numbers[])  { ... }
Run Code Online (Sandbox Code Playgroud)

double... numbers一样的double numbers[]吗?

java arrays parameter-passing variadic-functions

2
推荐指数
1
解决办法
2757
查看次数

在另一个字符串中搜索一个字符串

假设我有一些字符串表,有几个字符串(如母亲,父亲,儿子),现在在这个字符串表中我想找到包含字符串"th"的每个单词.

我该怎么办?方法string.equals(string)在这里没有帮助.

java string search

2
推荐指数
2
解决办法
2358
查看次数

2
推荐指数
1
解决办法
1355
查看次数

为什么不呢?在这种模式中作为可选的重复说明符工作?

我想尝试匹配输入

<foo>
<bar>
#####<foo>
#####<bar>
Run Code Online (Sandbox Code Playgroud)

我试过#{5}?<\w+>,但它不匹配<foo><bar>.

这种模式有什么问题,如何修复?

java regex

2
推荐指数
1
解决办法
314
查看次数

在Eclipse中配置字符串外部化以使用$ {key}作为字段名称

假设我有一个像这样的简单代码:

public class ExternalizeStringDemo {
    public static void main(String[] args) {
        System.out.println("Hello world");
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,我想将问候外化,或许是为了促进国际化/本地化/等.使用Eclipse,我可以使用String Externalization向导(Source/Externalize Strings),并像这样配置它:

替代文字

我可以继续向导,它将提出这些更改:

  • 创建文件 Personal Toys/src/Messages.java
  • 创建文件 Personal Toys/src/messages.properties
  • 编辑 ExternalizeStringDemo.java
    • "Hello World"Messages.getString("DEMO_GREETING")

我的问题很简单:我可以要求Eclipse外部化访问权限以使用密钥作为字段名称吗?也就是说,我希望访问权限是例如Messages.DEMO_GREETING.

注意:如果这[Substitution pattern]很简单${key},那么生成的代码就是Messages."DEMO_GREETING"有效的Java代码.


如果这是不可能的,那么下一个最好的东西是什么?(我在想Eclipse正则表达式找到/替换?).

java eclipse internationalization string-externalization

2
推荐指数
1
解决办法
9587
查看次数