在Java中将整数数组转换为字符串的最佳方法

did*_*xga 2 java arrays string integer

在Java中,我有一个整数数组.有没有快速的方法将它们转换为字符串?

IE int[] x = new int[] {3,4,5} x toString()应该产生"345"

Jon*_*eet 8

最简单的高性能方法可能是StringBuilder:

StringBuilder builder = new StringBuilder();
for (int i : array) {
  builder.append(i);
}
String text = builder.toString();
Run Code Online (Sandbox Code Playgroud)

如果你发现自己在多个地方这样做,你可能想看看Guava的Joiner - 虽然我不相信你能用它来原始数组.编辑:如下所述,你可以使用Ints.join它.


Lan*_*dei 6

   int[] x = new int[] {3,4,5};
   String s = java.util.Arrays.toString(x).replaceAll("[\\,\\[\\]\\ ]", "")
Run Code Online (Sandbox Code Playgroud)

更新

为了完整性,Java 8 Streams 解决方案,但它并不漂亮(像vavr这样的库会更短更快):

String s = IntStream.of(x)
  .mapToObj(Integer::toString)
  .collect(Collectors.joining(""));
Run Code Online (Sandbox Code Playgroud)


Sac*_*hag 5

试试这个 - 你必须import java.util.Arrays然后 -

String temp = Arrays.toString( intArray ).replace(", ", "");
String finalStr = temp.substring(1, temp.length()-2);
Run Code Online (Sandbox Code Playgroud)

其中 intArray 是您的整数数组。

  • 就我个人而言,我宁愿使用我的五行简单代码,也不愿使用两行代码,这些代码已经证明自己相对难以正确:) (2认同)