目录
- 数组的定义
- 数组的创建
- 访问数组元素
- 遍历数组
- 数组实例
- 分析
数组的定义
- 数组是相同类型数据的有序集合。数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们。
数组的5个基本特点:
- 长度是确定的。数组一旦被创建,它的大小就是不可以改变的。
- 其元素的类型必须是相同类型,不允许出现混合类型。
- 数组类型可以是任何数据类型,包括基本类型和引用类型。
- 数组有索引的:索引从0开始,到 数组.length-1 结束
- 数组变量属于引用类型,数组也是对象。
注意:数组变量属于引用类型,数组也是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中存储的。
数组的创建
Java数组是一种数据结构,用于存储相同类型的元素集合。数组的元素可以通过索引来访问。Java中的数组可以是固定大小的,也可以是动态增长的。
在Java中,可以使用以下语法来创建数组:
dataType[] arrayName = new dataType[size];
其中,dataType
是数组元素的类型,arrayName
是数组的名称,size
是数组的大小。
例如,创建一个整型数组并初始化:
int[] myArray = new int[5]; // 创建一个大小为5的整型数组
访问数组元素
要访问数组中的元素,可以使用索引来访问。数组的索引从0开始,可以使用以下语法来访问数组元素:
arrayName[index] = value; // 将value赋给指定索引的元素
int value = arrayName[index]; // 获取指定索引的元素的值
例如,给上面创建的整型数组赋值:
myArray[0] = 10; // 将10赋给第一个元素
myArray[1] = 20; // 将20赋给第二个元素
遍历数组
要遍历数组中的所有元素,可以使用循环结构。可以使用以下语法来遍历数组:
for (int i = 0; i < arrayName.length; i++) {
// 访问或操作arrayName[i]
}
例如,打印上面创建的整型数组的所有元素:
for (int i = 0; i < myArray.length; i++) {
System.out.println(myArray[i]); // 打印当前索引的元素的值
}
数组实例
public class TestArray{
public static void main(String[] args){
//数组的作用:用来存储相同类型的数据
//以int类型数据为案例:数组用来存储int类型数据
//1.声明(定义数组)
int[] arr; //定义一个int类型的数组,名字叫arr
//int arr2[];
//如果数组只声明,没有后续操作,那么这个数组相当于没定义
//int[] arr3 = null;//空 辨别:数组赋值为null和什么都没有赋值 不一样的效果
//2.创建
arr = new int[4];//给数组开辟了一个长度为4的空间
//编译期声明和创建会被合为一句话: int[] arr = new int[4];
//3.赋值
arr[0] = 12;
arr[3] = 47;
arr[2] = 98;
arr[1] = 56;
arr[2] = 66;
/*
arr[4] = 93;
出现异常:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
--->数组索引越界异常
*/
//4.使用
System.out.println(arr[2]);
System.out.println(arr[0]+100);
//通过数组一个属性来获取 length 长度
System.out.println("数组的长度是:"+arr.length);
}
}
分析
- 声明数组:
int[] arr;
- 这里声明了一个名为
arr
的整数数组,但此时它还没有被初始化,所以它的长度是0。
- 创建数组:
arr = new int[4];
- 这行代码创建了一个长度为4的整数数组,并把数组的引用赋值给
arr
变量。此时,数组的四个元素都是默认值0。
- 赋值:
arr[0] = 12;
arr[3] = 47;
arr[2] = 98;
arr[1] = 56;
arr[2] = 66; // 这里覆盖了arr[2]的原有值98
- 这些行代码给数组的元素赋值。注意,数组的索引是从0开始的,所以
arr[3]
实际上是数组的第四个元素。
- 使用数组:
System.out.println(arr[2]); // 输出:66,因为arr[2]被重新赋值为66了
System.out.println(arr[0]+100); // 输出:112,arr[0]的值是12,加100后为112
System.out.println("数组的长度是:"+arr.length); // 输出:数组的长度是:4,因为数组有4个元素
这部分代码展示了如何通过索引访问数组元素以及如何使用数组的length
属性。
5. 异常处理:
- 尝试访问或修改数组中不存在的元素(如
arr[4] = 93;
)会导致ArrayIndexOutOfBoundsException
异常,因为有效的索引范围是从0到3。