- 数组概述:
- 数组可以看成是多个相同类型数据组合,对这些数据的统一管理。
- 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型
- 一位数组的声明(栈)
- 声明方式:type var[]; 或 type[] var;
- Java语言中声明数组时不能指定其长度(数组中元素的个数),例如:int a[5];//非法
- 数组对象的创建(堆)
- Java中使用关键字new创建数组对象,格式为:数组名 = new 数组元素类型[数组元素的个数]
- 元素为引用数据类型的数组中的每一个元素都需要实例化。
- 数组初始化:
- 动态初始化:数组定义与数组元素分配空间和赋值的操作分开进行。
- 静态初始化:在定义数组的同时就为数组元素分配空间并赋值。
- 数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐式初始化。
- 数组元素的引用:
- 定义并用运算符new为之分配空间后,才可以引用数组中的每个元素,数组元素的引用方式为:
- arrayName[index]:index为数组元素的下标,可以是整形常量或整形表达式。
- 数组元素下标从0开始;长度为n的数组合法下标取值范围为0~n-1。
- 每个数组都有一个属性length指明它的长度:a.length的值为数组a的长度(元素个数)。
- 定义并用运算符new为之分配空间后,才可以引用数组中的每个元素,数组元素的引用方式为:
- 二维数组:
- 二维数组可以看成以数组为元素的数组。
- 例如:int a[][] = {{1,2},{3,4,5,6},{7,8,9}}
- Java中多维数组的声明和初始化应按从高维到低维(从左到右)的顺序进行:例如:
- int a[][] = new int[3][];
- a[0] = new int[2];
- a[1] = new int[4];
- a[2] = new int[3];
- int t1[][] = new int[][4];//非法
- 二维数组可以看成以数组为元素的数组。
- 数组的拷贝:
- 使用java.lang.System类的静态方法:public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
- 可以用于数组src从第srcPos项开始的length个元素拷贝到目标数组从destPos项开始的length个位置。
- 如果源数据数目超过数组边界会抛出IndexOutOfBoundsException异常。
- 总结:
- 数组的内存布局(引用类型)
- 常见算法
数组 【java笔记】
最新推荐文章于 2024-09-10 16:56:06 发布