数组_声明与初始化
概述
-
概念
数组(Array),是多个 相同类型数据 按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。
-
特点
- 数组本身是 引用数据类型,而数组中的元素可以是 任何数据类型,包括基本数据类型和引用数据类型。
- 创建数组对象会在内存中开辟一整块
连续的空间
。占据的空间的大小,取决于数组的长度和数组中元素的类型。 - 数组一旦初始化完成,其长度就是确定的。数组的长度一旦确定,就不能修改。
-
分类
- 按照元素类型
- 基本数据类型元素:每个元素位置存储基本数据类型的值
- 引用数据类型元素:每个元素位置存储对象(本质是存储对象的首地址)
- 按照维度
- 一维数组:存储一组数据
- 二维数组:存储多组数据,相当于二维表,一组数据代表一行
- 按照元素类型
一维数组
- 一维数组的声明
格式:
//推荐
元素的数据类型[] 数组名;
如: int [] arr; double[] arr2; String[] arr3;
//不推荐
元素的数据类型 一维数组名[];
数组名:就是代表某个数组的标识符,数组名其实也是变量名,按照变量的命名规范来命名。数组名是个引用数据类型的变量,因为它代表一组数据。
-
一维数组的初始化
- 静态初始化:数组变量的初始化和数组元素的赋值操作同时进行
//格式一: 数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,...}; 或 数据类型[] 数组名; 数组名 = new 数据类型[]{元素1,元素2,元素3,...}; eg: int [] arr = new int [] {1,2,3,4,5}; 或 int [] arr; /数组的声明 arr = new int [] {1,2,3,4,5}; //格式二: 数据类型[] 数组名 = {元素1,元素2,元素3...}; eg: int[] arr = {1,2,3,4,5};
说明:new:关键字,创建数组使用的关键字。因为数组本身是引用数据类型,所以要用new创建数组实体。
- 动态初始化:数组变量的初始化和数组元素的赋值操作分开进行
数组存储的元素的数据类型[] 数组名字 = new 数组存储的元素的数据类型[长度]; 或 数组存储的数据类型[] 数组名字; 数组名字 = new 数组存储的数据类型[长度]; eg: int[] arr = new int[5]; int[] arr; arr = new int[5];
注意:
- 每个数组都有一个属性length指明它的长度,例如:arr.length 指明数组arr的长度(即元素个数)
- 每个数组都具有长度,而且一旦初始化,其长度就是确定,且是不可变的。
二维数组
- 二维数组的声明
格式:
//推荐
元素的数据类型[][] 二维数组的名称;
eg:int[][] grades;
//不推荐
元素的数据类型 二维数组名[][];
eg:int grades [][] ;
//不推荐
元素的数据类型[] 二维数组名[];
eg:int[] x, y[]; //x是一维数组,y是二维数组
-
二维数组的初始化
-
静态初始化
int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};
-
动态初始化
//格式一: int[][] arr = new int[3][2]; 1. 确定行数和列数 2. 再为元素赋新值:arr [1] [2] = 12; //格式二: int[][] arr = new int[3][]; 1. 二维数组中有3个一维数组。
-