Java中的数组 Array

Java 中的数组是在一段连续的内存空间中存储固定数量元素的容器。其本质为一种数据结构,并且存储的元素有着相同的数据类型。

数组是基于索引的数据结构存储,因此它们允许随机访问元素。这里的索引从 0 开始。

数组表示

下面我们创建了一个包含 5 个元素的数组,索引范围从’0’到’4’。

int[] a = new int[5];

a[0] = 1;
a[1] = 2;
a[2] = 4;
a[3] = 8;
a[4] = 16;

上述示例的图形表示如下。

数组 Array 特征

  • Java中,数组是 Object 的子类型
  • 可以使用’length’属性找到数组的长度
  • Java 数组是类型,我们可以声明数组类型的变量
  • 数组是有序的,每个数组第一个元素的索引从’0’开始
  • 数组中可以存基本数据类型,也可以存对象类型,但在一个数组实例中,所有类型都必须是单一类型
  • 就像其他变量一样,数组也可以用作static,final或用作方法参数
  • 数组的大小由一个int值指定
  • Java 数组是 Cloneable 和 Serializable。

数组类型

数组可以分为一维数组、二维数组、三维数组等,但是除了一维数组外,其他都不常用,于是,我们一般就分为一维数组和多维数组。

一维数组

一维数组声明的一般形式是:

// 语法
type var-name[];

// 举例
int num[];

String names[];

另一种形式:

// 语法
type[] var-name;

// 举例
Long[] size;

Object[] items;

虽然两种形式都是可以用的,但是第一种形式实际上是参照其他编程语言的语法,不建议使用。

我们一般声明变量的时候,先定义类型,在定义变量名,然后赋值。而数组属于一种数据类型,因此定义为type[] 才是合理的。

多维数组

多维数组存储其他数组。它是数组的数组。在多维数组中,数组的每个元素都持有其他数组的引用。通过在每个维度附加一组方括号[ ]来创建多维数组。

// 语法
type var-name[][];

type[][] var-name;

// 举例
int[][] cordinates;

String nameSets[][];

数组初始化

静态初始化

静态初始化标准格式:

数据类型[ ] 数组名称 = new 数据类型[ ]{元素1,元素2,元素3…}

int[] ids = new int[]{10, 20, 30};

静态初始化简化格式:

数据类型 [ ] 数组名称 = {元素1,元素2,元素3…}

int[] keys = {30, 40, 50};

动态初始化

数据类型 [ ] 数组名称 = new 数据类型[数组长度]

int[] ids = new int[5];
ids[0] = 1;
ids[1] = 2;
ids[2] = 3;
转载请注明出处:码谱记录 » Java中的数组 Array
标签: