如何轻松打印阵列?

时间:2012-08-24 22:56:04

标签: java arrays

我目前正在使用数组,每次我需要打印一个我做一个for循环。

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

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

3 个答案:

答案 0 :(得分:12)

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

有关详情,请参阅Arrays docs

答案 1 :(得分:9)

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

答案 2 :(得分: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));