我有代码用10个整数填充数组,但由于某种原因,它不仅用整数填充它。 EX。 [我@ 5483cd或[我@ 1690726 谁知道为什么?
public static void main(String[] args) {
int[] array = new int[10];
int length = array.length;
for (int i = 0; i < length; i++) {
array[i] = (int)(Math.random () * 10);
}
System.out.println(array);
}
答案 0 :(得分:4)
System.out.println(array)
正在打印数组的哈希码,而不是数组中的值。迭代数组中的值并打印出来,如下所示:
for (int val : array)
{
System.out.println(val);
}
更简单,请使用:Arrays.toString(array)
。见What's the simplest way to print a Java array?
答案 1 :(得分:0)
正如其他答案所说,println正在打印数组hashcode。如果要查看数组的内容,可以迭代每个元素并打印它,或者您可以使用Arrays.toString()方法。
import java.util.Arrays;
System.out.println(Arrays.toString(array));
如果您有多维数组,请使用Arrays.deepToString()。浏览Arrays课程了解更多此类实用工具方法。