4

我目前正在使用数组,每次我需要打印一个时,我都会执行一个 for 循环。

System.out.print("[");
for(int i = 0; i < arr.length; i++){
    System.out.print(arr[i] + ", ");
}
System.out.println("]");

这似乎是一个将内置到 java 中的功能(我正在使用 java)。是否有内置的方法来打印数组?

4

3 回答 3

12

您可以使用: Arrays.toString(arr) 用于普通数组和/或 Arrays.deepToString(arr) 数组中的数组。这两种方法都返回数组的字符串表示形式。

有关更多信息,请参阅数组文档

于 2012-08-24T22:58:05.030 回答
9
System.out.println(Arrays.toString(arr));
于 2012-08-24T22:57:59.527 回答
0

您也可以编写自己的方法来做同样的事情Arrays.toString()

/** Converts an array into a CSV string. */

public static <T> String arrayToCsv(T[] someArray) {

    if (someArray == null || someArray.length == 0) {
        return "";
    }

    StringBuilder csv = new StringBuilder();

    for (T thisT : someArray) {
        String val = (thisT == null) ? "null" : thisT.toString();
        csv.append(val).append(", ");
    }

    return csv.toString();
}

测试它:

Double[] doubleArray = { 2.4, 3.6, 6.5 };
String[] stringArray = { "foo", "bar", "baz" };

System.out.println(arrayToCsv(doubleArray));
System.out.println(arrayToCsv(stringArray));
于 2012-08-24T23:44:36.690 回答