数组是最为常见的一种数据结构,是相同类型的、用一个标识符封装到一起的基本类型数据
序列或对象序列。可以用一个统一的数组名和下标来唯一确定数组中的元素。实质上,数组是一
个简单的线性序列,因此访问速度很快。
目录
4.1 数组的概述
数组是具有相同数据类型的一组数据的集合。
4.2 一维数组
一维数组实质上是一组相同类型数据的线性集合,例如学校中学生们排列的一字长队就是一个数组,每一位学生都是数组中的一个元素。
4.2.1 创建一维数组
数组元素类型决定了数组的数据类型。它可以是Java中任意的数据类型,包括基本数据类型和其他引用类型。数组名字为一个合法的标识符,符号"[]"指明该变量是一个数组类型变量。单个"[]表示要创建的数组是一个一维数组。
声明一维数组有两种方式:
数组元素类型 数组名字[];
数组元素类型[] 数组名字;
声明一维数组,语法如下:
int arr[]; //声明int型数组,数组中的每个元素都是int型数值
double[] dou; //声明double型数组,数组中的每个元素都是double型数值
代码中ar为数组名称,方括号“[]”中的值为数组的下标,也叫索引。数组通过下标来区分不同的元素,也就是说,数组中的元素都可以通过下标来访问。这就相当于刚才比喻的快捷酒店,我们想要找到某个房间里的人,只需要知道这个人所在房间号。这个房间号就相当于数组的下标。
数组的下标是从0开始的。
4.2.2 初始化一维数组
数组可以与基本数据类型一样进行初始化操作,也就是赋初值。数组的初始化可分别初始化数组中的每个元素。数组的初始化有以下3种方式:
int a[]={1,2,3}; //第一种方式
int b[]=new int[] {4,5,6}; //第二种方式
int c[]=new int[3]; //第三种方式
c[0]=7; //给第一个元素赋值
c[1]=8; //给第二个元素赋值
c[2]=9; //给第三个元素赋值
数组的初始化就是包括在大括号之内用逗号分开的表达式列表。用逗号“,”分隔数组中的各个元素,系统自动为数组分配一定的空间。第一种初始化方式,将创建3个元素的数组,依次为1、2、3;第二种初始化方式,创建3个元素的数组,依次为4、5、6;第三种初始化方式先给数组创建了内存空间,再给数组元素逐一赋值。
4.2.3 获取数组长度
初始化一维数组的时候都会在内存中分配内存空间,内存空间的大小决定了一维数组能够数组的 存储多少个元素,也就是数组长度。如果我们不知道数组是如何分配内存空间的,该如何获取数组长度呢?我们可以使用数组对象自带的length属性。语法如下:
arr.length
//arr:数组名
//length:数组长度属性,返回int值
例4.1 使用length属性获取数组长度。
代码如图所示:
运行结果如图所示:
4.2.4 使用一维数组
例4.2 在项目中创建类GetDay,在主方法中创建int型数组,并实现将各月的天数输出。
代码如图所示:
运行结果如图所示:
使用数组最常见的错误结束数组下标越界
4.3 二维数组
二维数组常用于表示表,表中的信息以行和列的形式表示&#