1:数组
格式:
元素类型[] 数组名 = new 元素类型[元素个数或数组长度];
int[] arr = new int[5];
左边:
int:表示数组中元素的类型
[]:表示是一个数组
arr:表示是数组的名称
右边:
new:是一个创建实体的关键字,在这是为了创建数组
int:表示数组中元素的类型
5:表示是数组中元素的个数或者是数组的长度
注意:基本数据类型,存在栈内存中。
而引用数据类型不会存在栈内存中。
栈内存
存储的是局部变量和基本数据类型,当这个局部变量的作用范围执行完毕的时候,这个变量就会立刻被从栈内存中释放掉
堆内存
存储的是引用型数据,也就是使用new关键字创建的实体,包含数组和对象。
当堆内存中的实体没有被任何变量所使用的时候,会不定时会java虚拟机的垃圾回收器所回收。
问题:
1:java.lang.NullPointerException:空指针异常
这个一般是对一些空指向的变量做一些操作。
2:java.lang.ArrayIndexOutOfBoundsException: 3:数组角标越界异常
这个肯定是操作了数组中不存在的角标
注意:数组中元素的个数在数组创建之后就不能修改了。