跳转至

数组#

情境导入#

假设你的公司有5位员工,记录他们的年龄(int类型)。

我们能创建5个int

int age0 = 22;
int age1 = 25;
int age2 = 23;
int age3 = 30;
int age4 = 28;

那如果有100位、1000位呢?显然,我们不想(也不能)创建多个int。这时,就需要用到数组了。

数组(Array)包含零个或多个变量。数组中的变量称为组件(Component)。

创建数组#

创建数组和创建变量使用的语句相同,区别在于数组的类型为组件类型[]

C[] a = new C[l];                      // (1)
C[] a = new C[]{v_0, v_1, ..., v_l-1}; // (2)
C[] a = {v_0, v_1, ..., v_l-1};        // (3)

上述语句中,C为组件类型,l为数组的长度,v_n为第n个组件的初始值。

在(2)(3)式中,数组a的长度会由 Java 自动确定。数组一经创建,其长度就不可改变。

访问组件#

数组中每一个组件都是变量,因此获得数组的组件后可以按变量的方式赋值等。

获取数组的组件需要用访问语句

C c = a[i];

其中i为数组的索引(Index),且满足i >= 0 && i < l。索引从0开始,即第1个组件索引为0,第2个组件索引为1,以此类推。

边界#

数组的长度通过.length获取,其类型为int,如c.length

如果索引小于0或大于等于数组的长度,JVM 会抛出ArrayIndexOutOfBoundsException异常。