目录
4.1 数组的概述
数组中的每个元素具有相同的数据类型。在Java中同样将数组看作是一个对象, 虽然基本数据类型不是对象,但是由基本数据类型组成的数组则是对象。在程序设计中引入数组可以更有效地管理和处理数据。我们经常使用的数组包括一维数组和二维数组等。
4.2 一维数组
一维数组时至上是一组相同类型数据的线性集合,例如学校中学生们排列的一字长队就是一个数组,每一位学生都是数组中的一个元素。再比如快捷酒店,就相当于一个一维数组,每一个房间
都是这个数组中的元素。当在程序中需要处理一组数据, 或者传递一组数据时,就可以使用数组实现。本节将介绍一维数组的创建及使用。
4.2.1 创建一维数组
数组元素类型决定了数组的数据类型。它可以是Java中任意的数据类型,包括基本数据类型和其他引用类型。数组名字为一个合法的标识符,符号“[ ]”指明该变量是一个数组类型变量。 单个“[ ]”表示要创建的数组是一个一 维数组。
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:第三种初始化方式先给数组创建了内存空间,再给数组元素逐一赋值。 注意:Java中的数组第一个元素, 索引是以0开始的。
4.2.3 获取数组长度
我们初始化一维数组的时候都会在内存中分配内存空间,内存空间的大小决定了一维 数组能够存储多少个元素,也就是数组长度。如果我们不知道数组是如何分配内存空间的,该如何获取数组长度呢?我们可以使用数组对象自带的length属性。语法如下:
arr. length
arr: 数组名。
length :数组长度属性,返回int值。
public class GetArrayLength {//创建GetArrayLength类
public static void main(String[] args) {//主方法
char a[]= {'A','B','C','D'}; //创建一维数组
System.out.println("数组a的长度为"+a.length); //输出a的长度
char b[]=a; //创建一维数组b,直接等于数组a
System.out.println("数组b的长度为"+b.length); //输出b的长度
}
}
4.2.4 使用一维数组
在Java中,一维数组是最常见的一种数据结构。下面的实例是使用一维数组将1~12月份各月的天数输出。
public class GetDay {//创建GetDay类
public static void main(String[] args) {//创建并初始化一维数组
int day[]=new int[] {31,28,31,30,31,30,31,31,30,31,30,31};//输出一年12月中每月的天数
for (int i=0;i<12;i++) { //利用循环将信息输出
System.out.println((i+1)+"月有"+day[i]+"天"); //输出的信息
}
}
}
4.3 二维数组
二维数组常用于表示表,表中的信息以行和列的形式表示,第一个下标代表元素所在的行,第二个下标代表元素所在的列。
4.3.1 创建二维数组
二维数组可以看作是特殊的一维数组,因此,二维数组有两种声明方式:
数组元素类型 数组名字[ ] [ ];
数组元素类型 [ ][ ]数组名字;
声明二维数组。代码如下:
int tda