数组
如果有一组类型相同的变量,例如,5位同学的成绩,可以这么写:
public class Main {
public static void main(String[] args) {
// 使用变量方式定义
int n1 = 68;
int n2 = 79;
int n3 = 91;
int n4 = 85;
int n5 = 62;
}
}
但其实没有必要定义5个 int
变量。可以使用数组来表示“一组” int
类型。代码如下:
public class Main {
public static void main(String[] args) {
// 使用数组方式定义
int[] n = new int[5];
n[0] = 68;
n[1] = 79;
n[2] = 91;
n[3] = 85;
n[4] = 62;
}
}
定义一个数组类型的变量,使用数组类型 类型[]
,例如,int[]
。和单个基本类型变量不同,数组变量初始化必须使用 new int[5]
表示创建一个可容纳5个 int
元素的数组。
Java的数组有几个特点:
数组所有元素初始化为默认值,整型都是 0
,浮点型是 0.0
,布尔型是 false
;
数组一旦创建后,大小就不可改变。
要访问数组中的某一个元素,需要使用索引。数组索引从 0
开始,例如,5
个元素的数组,索引范围是 0~4
。
可以修改数组中的某一个元素,使用赋值语句,例如,n[1]= 78;
。
可以用数组变量 .length
获取数组大小:
数组是引用类型,在使用索引访问数组元素时,如果索引超出范围,运行时将报错:
public class Main {
public static void main(String[] args) {
// 5位同学的成绩:
int[] n = new int[5];
int i = 5;
System.out.println(n[i]); // 索引i不能超出范围
}
}
也可以在定义数组时直接指定初始化的元素,这样就不必写出数组大小,而是由编译器自动推算数组大小。例如:
public class Main {
public static void main(String[] args) {
int[] n = new int[] { 68, 79, 91, 85, 62 };
System.out.println(n.length); // 编译器自动推算数组大小为5
}
}
上面的数组定义还可以进一步简写为:
int[] n = { 68, 79, 91, 85, 62 };