我目前正在尝试理解int数组是如何工作的,所以这是一个代码:
public static void main(String[] args) {
int[] name;
name = new int[] {10,20,30,40,50,60,70,80,90,100};
System.out.println(name);
}
我的问题是它在Eclipse中打印出[I@15b7986
。我很想知道为什么,也许找到一种方法在整数数组中打印出那些数值。
答案 0 :(得分:1)
“[I @ 15b7986”是数组上toString()方法的结果,这对查看数组中的元素没有帮助。根据你想要完成的事情,也许这样的事情会有所帮助......
public static void main(String[] args) {
int[] name = new int[]{10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
System.out.println(java.util.Arrays.toString(name));
}
答案 1 :(得分:1)
System.out.println()隐式调用object.toString(),哪些Java文档默认为:
getClass().getName() + '@' + Integer.toHexString(hashCode())
请参阅: http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html
要打印要调用的数组中的值列表:
StringBuilder out = new StringBuilder();
for (int x : name) {
out.append(x);
out.append(" ");
}
System.out.println(out.toString());
答案 2 :(得分:1)
如果您使用的是Java 8,则可以执行以下操作:
int[] name = new int[]{10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
Arrays.stream(name).forEach(p -> System.out.println(p));