Java:可以输出数组而不使其成为字符串吗?

时间:2014-02-04 00:02:38

标签: java

当练习需要数组作为输出的练习题时,我必须使用

System.out.println(Arrays.toString(arrayName));

这是直观地看到你最终得到的阵列的唯一方法吗?如果是这样,有没有办法改变输出的格式?

默认情况下,Arrays.toString方法在数组周围放置[]并在每个逗号后面放置一个空格。如果不是[0,1,2,3],我想将数组显示为{0,1,2,3},该怎么办?

我知道这是微不足道的,但我们仅限于如何显示数组似乎很奇怪。

3 个答案:

答案 0 :(得分:1)

我能想到的显示数组的唯一方法是使用for循环迭代数组。

int[] numbers = {1, 5, 3};
// then you can print out the curly braces
System.out.print("{");
for (int i = 0; i < numbers.length; i++) {
    System.out.print(i);
    if (!(i == numbers.length-1)) System.out.print(",");
}
System.out.print("}");

答案 1 :(得分:1)

简单地说:不。这只是最便捷的方式。

根据您的要求,您可以通过几种不同的方式迭代数组以获取所需的数据,并以您需要的任何方式显示它。

答案 2 :(得分:1)

最简单的方法是使用Apache Commons StringUtils.join方法(请参阅http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils。 html #joed(java.lang.Object [],java.lang.String)),您可以在其中指定分隔符。您可以自己单独添加{}个字符。

System.out.println("{" + StringUtils.join(myArray, ",") + "}");