数组

数组声明有2种方法:
动态初始化: int[] arr = new int[3]; 指定长度,系统自动分配初始值
静态初始化:int [] arr = {1,2}; 给出初始值,系统决定长度

java内存分配:

栈:局部变量, 就是定义方法中的变量, 使用完毕立即回收 int[] arr 存放在栈里
堆:存储的是new出来的东西,实体,对象 , 每一个对象数据都有默认值。堆内存使用完毕后,会在垃圾回收器空闲的时候被回收。new int[3];存放在堆里
方法区:
本地方法区:和系统相关
寄存器:给cpu使用

数组经常遇见的2个问题
1.数组越界
2.空指针异常
null 赋值的类型为,引用类型

你可能感兴趣的:(数组)