我想将长数组值转换为特定的字符串格式。
例如longArray = {0,1,2,3}转换为字符串0.1.2.3
我可以做Arrays.toString(longArray),它将返回[0,1,2,3]。
现在,此字符串[0,1,2,3]必须转换为0.1.2.3
我已经使用了可以正常工作的代码,但是想看看是否可以改进此代码
String convertedString = Arrays.toString(longArray).replaceAll(",",".").replaceAll("[\\[,\\],\\s]", "");
我不得不提到我使用的是Java 7,因此无法使用任何Java 8功能(例如流)
最好的祝福,
绍拉夫
最佳答案
long[] longArray = {0,1,2,3};
String s = LongStream.of(longArray)
.mapToObj(Long::toString)
.collect(Collectors.joining("."));
由long组成的long数组,每个long用
Long.toString(long)
映射到String,然后与定界符.
联接。本来我有
String::valueOf
而不是Long.toString
。感谢@Andreas提供更好的样式。