我尝试过以下方法:
List<Character> randomExpression = new ArrayList<Character>();
String infixString = new String(randomExpression.toArray());
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为没有带Object[]参数的String结构.
aio*_*obe 12
正如您可能已经注意到的那样,char[]有些不同Character[],并且没有直接的方法可以在标准API中将一个转换为另一个.
在这种特殊情况下,我可能会选择以下内容:
String result = chars.stream()
.map(String::valueOf)
.collect(Collectors.joining());
Run Code Online (Sandbox Code Playgroud)
或者,Java 9之前:
StringBuilder sb = new StringBuilder(chars.size());
for (char c : chars)
sb.append(c);
String result = sb.toString();
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用Apache Commons方法ArrayUtils.toPrimitive:
List<Character> chars = new ArrayList<Character>();
// ...
Character[] charArr = chars.toArray(new Character[chars.size()]);
String str = new String(ArrayUtils.toPrimitive(charArr));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20255 次 |
| 最近记录: |