数组初识
1.数组的特点:
-
数组所有元素初始化默认值,int默认值为0
-
数组创建后大小不可改变
-
数组索引从0开始
-
数组是引用类型
-
使用索引下标访问数组元素,索引超出范围会报错
2.数组的定义: 类型[] 数组名
int[] list1 = new int[5]; //如数组初始化new int[5],指定长度
int[] list2 = new int[]{1, 2, 3, 4, 5}
int[] list3 = {1, 2, 3, 4, 5}
3.示例
//方法1
int[] ns = new int[5]; // ns指向的数组对象时[0,0,0,0,0]
ns[0] = 68 ;
ns[1] = 79;
ns[2] = 91;
ns[3] = 85;
ns[4] = 62;
//System.out.println(ns[5]);//数组越界,java.lang.ArrayIndexOutOfBoundsException
System.out.println(ns.length);//获取数组长度
//方法2:直接指定初始化的元素,由编译器自动推算数组大小
int[] scores = new int[]{68,79,91,85,62};
//方法2可以进一步简写为 int[] scoress = {68,79,91,85,62}
System.out.println(scores.length);
//单步执行代码
int[] ns1 = new int[5];//从下图可以看到数组的初始值全是0
int[] ns2 = new int[]{1,3,5,7,9};
int[] ns3 = {2,4,6,8,10};
int[] ns4 = ns3;
System.out.println("ns1.length:"+ns1.length);
System.out.println("ns2.length:"+ns2.length);
System.out.println("ns3.length:"+ns3.length);
System.out.println("ns3[1]:"+ns3[1]);
ns3[1] = 999;
System.out.println("ns3[1]:"+ns3[1]);
System.out.println("ns4[1]:"+ns4[1]);
4.总结:
- 数组是同一数据类型的集合
- 数组是引用类型。为一个对象贴上了标签,一旦没有标签指向它,会被Java垃圾回收清理掉
- 数组元素是值类型(如int[])或引用类型(如String[])
- 数组一旦创建大小不可变
- 可以通过索引访问数组元素
- 索引超出范围将报错