Java基础--数组

数组是用来存储一堆具有固定大小的相同类型元素

一维数组

一维数组声明

java中声明数组时不能指定长度

int [] arr; //java中推崇的风格 int arr []; // c与c#中推崇的风格,强烈建议java风格

创建数组

创建数组对象会在内存中开辟一整块连续的空间,数组名中引用的是这块连续空间的首地址;一旦arrysize确定,就不能更改。

数组是引用类型数据,要使用new来创建

arr = new datatype[arrysize]; arr = new int [5]; // 创建了一个长度为5的数组,并将数组赋值给arr arr[1] = 0; arr[2] = 2; ...

数组的动态初始化与静态初始化

动态初始化:声明数组并为数组分配空间与数组赋值分开进行

静态初始化:定义数组的同时为数组分配空间并赋值

// 动态初始化 int [] arr = new int[3]; arr[0] = 3; arr[1] = 4; arr[2] = 5; // 静态初始化 int [] arr1 = new int[]{1,2,3}; // 或者 int [] arr1 = {1,2,3};

数组只有定义并用new分配空间后才能引用

数组下标或索引为0—arry.length-1

数组元素的默认初始化值

对于引用类型默认初始化值为null

对于基本数据类型而言,默认初始化值略有不同

数据类型 默认初始化值
byte   0  
short   0  
int   0  
char   0或'\u0000'(表现为空)  
long   0L  
float   0.0F  
double   0.0  
Boolean   false  
引用数据类型   null  
二维数组

从计算机底层来看其实并没有二维数组或多维数组的概念,二维数组可以看作N个一维数组作为另一个一维数组的元素

动态初始化:

// 方案1 int [][] arr = new int [3][4]; /* 定义了一个名为arr的数组 该二维数组中包含3个一维数组 每个一维数组的长度都为4 */ // 如要对第一个一维数组的第一个元素赋值可以这样 arr [0][0] = 78; // 方案2 int [][] arr = new int [3][]; /* 二维数组中有三个一维数组 每个以为数组默认初始化值都是null与方案1不同 可以分别对每个一维数组进行初始化 */ arr[0] = new int[2]; arr[1] = new int[3]; arr[2] = new int[4];

静态初始化:

int [][] arr = new int[][]{{1,2,3},{3,2,5},{65,7}} /* 定义一个名称为 arrarr 的二维数组 二维数组中有三个一维数组,每一个维数组中具体元素也都已初始化 第一个维数组 arrarr [0] = {1,2,3}; 第二个一维数组 arrarr [1] = {3,2,5}; 第三个一维数组 arr [2] = {65,7}; 第三个一维数组的长度表示方式: arrarr [2].length; */

奇奇怪怪的写法

int [] x,y[]; // x 是一维数组,y是二维数组,定义时有省略,比如 int a = 10,b = 10;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgsfy.html