Kru*_*nal 5 java arrays string int
如何int[]在Java中转换为逗号分隔的String?
int[] intArray = {234, 808, 342};
Run Code Online (Sandbox Code Playgroud)
结果我想:
"234, 808, 342"
Run Code Online (Sandbox Code Playgroud)
这里有非常相似的参考问题,但这些解决方案都没有提供我需要的结果.
到目前为止我尝试过的,
String commaSeparatedUserIds = Arrays.toString(intArray); // result: "[234, 808, 342]"
String commaSeparatedUserIds = Arrays.toString(intArray).replaceAll("\\[|\\]|,|\\s", ""); // result: "234808342"
String commaSeparatedUserIds = intArray.toString(); // garbage result
Run Code Online (Sandbox Code Playgroud)
Kay*_*man 11
这是一个流版本,在功能上等同于khelwood,但使用不同的方法.
它们都创建一个IntStream,映射int到a String并用逗号连接.
它们在性能上也应该完全相同,虽然从技术上讲我Integer.toString(int)直接打电话String.valueOf(int),而他正在打电话给哪个代表.另一方面,我打电话给IntStream.of()哪个代表Arrays.stream(int[]),所以这是一个平局.
String result = IntStream.of(intArray)
.mapToObj(Integer::toString)
.collect(Collectors.joining(", "));
Run Code Online (Sandbox Code Playgroud)
这应该做
String arrAsStr = Arrays.toString(intArray).replaceAll("\\[|\\]", "");
Run Code Online (Sandbox Code Playgroud)
在Arrays toString之后,替换[]为您提供所需的输出.
int[] intArray = {234, 808, 342, 564};
String s = Arrays.toString(intArray);
s = s.substring(1,s.length()-1);
Run Code Online (Sandbox Code Playgroud)
这应该有效。基本思想是通过Arrays.toString()排除第一个和最后一个字符来获取子字符串
如果想要在结果中引用,请将最后一行替换为:
s = "\"" + s.substring(1,s.length()-1) + "\"";
Run Code Online (Sandbox Code Playgroud)
您想要将整数转换为字符串,并用逗号将它们连接起来。您可以使用流来做到这一点。
int[] intArray = {234, 808, 342};
String s = Arrays.stream(intArray)
.mapToObj(String::valueOf) // convert each int to a string
.collect(Collectors.joining(", ")); // join them with ", "
Run Code Online (Sandbox Code Playgroud)
结果:
"234, 808, 342"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4153 次 |
| 最近记录: |