下面是我刚开始学java二维数组的疑问。
代码如下
public class Array2Demo
{
public static void main(String[] args)
{
//二维数组的定义
int[][] arr=new int[2][3];
//arr[1][2]=12;
System.out.println(arr);
System.out.println(arr[0]);
//System.out.println(arr[0][0]);
}
}
程序输出的结果是:
[[I@c17164
[I@1fb8ee3我的问题是为什么两个输出的地址是不同的,求原理?
请各位帮我看看,给出详细的解答,感谢万千!
代码如下
public class Array2Demo
{
public static void main(String[] args)
{
//二维数组的定义
int[][] arr=new int[2][3];
//arr[1][2]=12;
System.out.println(arr);
System.out.println(arr[0]);
//System.out.println(arr[0][0]);
}
}
程序输出的结果是:
[[I@c17164
[I@1fb8ee3我的问题是为什么两个输出的地址是不同的,求原理?
请各位帮我看看,给出详细的解答,感谢万千!
引用对象指的对象就不一样
arr[0] arr[1]这两个引用对象,
而arr[0]这个引用找到的是arr[0][0] arr[0][1] arr[0][2]这三个值
System.out.println(arr[0]);
首先这两句打印的不是地址
其次java里面的数组和c的数组是不一致的,c的数组你可以直接得到地址,java是不行的