数组

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
最后充当的是地址值
原文地址:https://www.cnblogs.com/xiangbalao/p/4953169.html