数组
1.静态初始化
int[] arrays = new int[]{6,1,,9,18};
2.动态初始化
int[] arrays = new int[4];
内存中的数组
int[] a = new int[]{5,5,8,14,12}; int[] b = new int[3]; System.out.println(b.length); b = a; System.out.println(b.length);
结构如下图:
b原来的所指的,失去引用的数组,变成垃圾,但长度依然不变
在 b= a;时,把a的地址赋给了b,则a跟b会指向同一个内存,最后输出的长度为5;
int[] c;
数组是一种引用型变量,仅仅表示定义了一个引用变量(也就是定义了一个指针),这个变量还未指向任何有效的内存,只有对数组进行初始化才可以使用。
引用类型数组的初始化:
class Person{ int age; double height;18 Person(int age,double height){ this.age = age; this.height; } public void info(){} } class test{ public static void main(String[] args) { Person[] p = new Persion[2]; Person wang = new Person(18,170); Persion li = new Person(20,165); p[0] = wang; p[1] = li; } }如下图:
new Person[2]; 只是在堆内存里建立,赋予两个null
最后充当的是地址值