1、容器概念
容器:是将多个数据存储到一起,每个数据称为该容器的元素。
2、数组概念
数组概念: 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。
数组的四个基本特点:
3、数组的定义
方式一(动态初始化:指定长度,由系统给出初始化值)
格式:
举例:
int[] arr = new int[3];
public static void main(String[] args) {
//基本类型 引用类型 int[] int a = 10;
int[] ages = new int[30];// 数组的定义
System.out.println(a);// 10
ages[0] = 20;
// 数组名[数组下标] = 对应类型的值; 数组的赋值操作
// 数组名[数组下标]
int age = ages[29];
System.out.println(ages);// [I@1540e19d 内存地址
System.out.println(ages[4]);// 0 int 类型数组默认值
System.out.println(ages[29]);// 20
System.out.println(ages[100]);// 数组索引越界异常
}
}
方式二(静态初始化 给出初始化值,由系统决定长度)
public class Test2 {
public static void main(String[] args) {
// 数组的第二种定义格式静态数组 数据类型[] 数组名 = new 数据类型[] {对应类型的数据1,对应类型的数据2,...};
int[] ages = new int[]{20,21,20,22,38,23,20,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,2320,21,20,22,38,23};
int a = ages[3];
int b = ages.length; // 数组长度 数组名.length
// 由于是从0开始算起 打印数组最后一个数据ages[ages.length-1]
System.out.println(b);
System.out.println(ages[b-1]);
System.out.println(ages[ages.length-1]);
System.out.println(a);
}
}
方式三(静态初始化 给出初始化值,由系统决定长度)==相较于第二种方式,这种方式较为常用
格式:
//数据类型[] 数组名 = {元素1,元素2,元素3...};
//举例:定义存储1,2,3,4,5整数的数组容器
int[] arr = {1,2,3,4,5};
public class Test3 {
public static void main(String[] args) {
// 数组的第三种定义格式
// 数据类型[] 数组名 = {元素1,元素2,元素3...};
int[] ages = {};
System.out.println(ages.length); // 数组长度为0
int a = ages[0]; //报错 数组下标越界异常
int[] agess = {10,20};
agess = null;
System.out.println(agess[0]);// NullPointerException空指针异常
}
}
异常
1、数组下标越界异常
2、空指针异常
#异常