一、java数组的特性
1.一个数组内的所有数据必须是相同的数据类型。
2.一旦数组的初始化完成,数组的长度就是固定的,不可变。
3.既可以存储基本类型的数据,也可以存储引用类型的数据,只要保证具有相同的类型即可。
4.数组也是一种数据类型,如int是一个基本类型,但是int[]就是引用类型了。
二、数组使用
1.定义数组
type[] arrayName type arrayName[]
推荐使用第一种,因为type[]是一种数据类型,这样来定义更清晰明了,可读性强。定义数组仅仅是定义了一个引用变量(也就是定义了一个指针),这个引用变量还未指向任何有效的内存,因而定义数组时不能指定数组的长度。
2.数组初始化
java中的数组必须要先初始化才可以使用,所谓初始化就是为数组元素分配内存空间,并为每个元素赋初始值。
静态初始化,指定初始值
arrayName = new Type[]{e1,e2,e3,...}
动态初始化,由系统指定初始值
arrayName= new Type[length]
系统按照如下规定分配初始值
byte,short,int,long===0 float,double===0.0 char==='u0000' boolean===false 类、接口、数组===null
三、数组使用
1.for循环
student[0]="zhanguoli"; student[1]="wanggang"; for(int i=0;i<student.length;i++){ Systemt.out.println(student[i]); }
2.foreach
students[0]="wanggang"; students[1]="zhangguoli"; for(String student : students){ Systemt.out.println(student); }
四、数组深入
实际的数组对象存储在堆(heap)内存中,如果引用改数组对象的数组引用变量是一个局部变量,那么它内存储在栈(stack)内存中。
如果想要访问堆内存中的数组元素,则程序中只能通过p[index]的形式来实现。