数组的四个基本特点
- 其长度是确定的。数组一旦被创建,它的大小就是不可以改变的
- 其元素必须是相同类型,不允许出现混合类型。
- 数组中的元素可以使任何数据类型,包括基本类型和引用类型
- 数组变量属引用类型,java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中的。
定义数组的两种方式
-
静态初始化:创建+赋值
int[] a = {1,2,3,4,5}//直接将数组里的值写进去
-
动态初始化:包含默认初始化
-
int[] b = new int[10]//创建一个有10个值的数组b b[0]=1; b[1]=2
java内存分析
堆
- 存放new的对象和数组
- 可以被所有的线程共享,不回存放别的对象引用
栈
- 存放基本类型(包含这个基本类型的具体数量)
- 引用对象的变量(会存放这个引用在堆里面的具体地址)
方法区
- 可以被所有的线程共享
- 包含了所有的class和static变量