更优雅的方式重复和加入一个未知次数的已知字符串

Nat*_*son 2 java java-8

我的目标是使用未知次数的分隔符加入已知字符串.

所以,如果我知道字符串是?和分隔符是,,我知道我想重复5多次,我会得到?,?,?,?,?

这段代码会这样做:

int n = 5;
ArrayList<String> al = new ArrayList<>(n);
for (int i = 0; i < n; ++i) al.add("?");
String s = String.join(",", al);
Run Code Online (Sandbox Code Playgroud)

但那太冗长了.我在Java 8库中遗漏了什么吗?请不要另外依赖.

rge*_*man 7

它在Java 8中并不新鲜,但您可以使用Collections.nCopies它创建一个List可以传递给它的东西String.join.自从在Java 1.2中创建Collections API以来,它就一直存在.

String s = String.join(",", Collections.nCopies(5, "?"));
Run Code Online (Sandbox Code Playgroud)