我正在YouTube上通过教程学习Java。我改变了一点代码,结果很奇怪。这是我的代码:
[I@2a139a55
但结果是import java.util.Random;
public class array {
public static void main(String args[]){
int bucky[]={1,2,3,4,5};
change(bucky);
for(int y:bucky)
System.out.println(y);// here!
}
// change the array
public static void change(int x[]){
for(int counter=0;counter<x.length;counter++)
x[counter]+=5;
}
}
本教程的代码是:
CET
答案 0 :(得分:1)
请记住, bucky 是和对象,即使它是一个基元int数组,所以你需要使用正确的方法打印该对象... 在您的情况下,正确的方式来打印数组
System.out.println(Arrays.toString(bucky));
而不是
System.out.println(bucky);
因为System.out.println(bucky);
正在调用超类toString()
的{{1}}方法,它只返回类名称和十六进制格式的Object
。
答案 1 :(得分:0)
要打印数组,请使用:
hashCode()
因此,在您的情况下,System.out.println(Arrays.toString(array));
将替换为array
。