Java学习 --数组篇

数组

1.1数组的概念
数组是由用类型的数据元素所构成的一种数据结构。需要注意的是:每个数组都有一个名为length的成员变量,用来表示数组所包含的元素的个数,而且它只能是0或者是正整数!!

1.2数组的声明、创建、初始化和引用

1.2.1 数组的声明:

Type arrayName[value];  
//或    
Type[] arrayName;

声明数组的时候不需要指明数组元素的个数,也不用为数组元素分配空间。
例如:

//声明int型数组
int intArray[];
//或者
int[] intArray;

//声明字符串型数组
String stringArray[];
//或者
String[] stringArray[];

1.2.2 数组的创建
首先应该明白包括数组在内的,Java中所有对象都是在运行时动态创建的。
但是,应该怎么创建?其中创建的方法之一就是利用new关键字构成数组的创建表达式。而在创建数组时,可以指定数组的类型和数组的元素的个数。
例如:

int[] a=new int[8];//声明和创建一起执行

//分开的形式如下
int[] a;//声明数组
a=new int[8];//创建数组

//也可以在一条语句中创建多个数组
String s1=new String[3],s2=new String[7];

1.2.3 数组的初始化
数组在声明之后要经过初始化才可以引用。也就是数组的元素要赋一个初始值!
如果没有指定初始值的话,就会默认赋予初始值。int型为0;Boolean类型为false; 引用类型元素的默认值为NULL。
如果在声明数组名的时候给出了数组的初始值,那么程序便会利用数组初始化值创建数组并对其的哥哥元素初始化。也就是说声明数组的时候,可以在数组后面加上初始值。前提是在数组的元素较少的情况下。

//语法形式:
Type arrayName[]={元素1,元素2};


//例如:
int a[]={12,56,78};
//该语句的意思就是创建了一个含有3个元素的数组,3个元素分别是:12,56,78

1.2.4 数组的引用
在数组经过初始化的时候就可以对数组进行引用,这里主要是根据组名和数组的下标来进行引用。
格式为:arrayName[arrayIndex];

在进行数组引用的时候,可能会产生数组越界异常。(ArrayIndexOutOfBoundsException)

2.1多维数组

多维数组现阶段主要是二维数组。多维数组也像前面的数组一样分为声明、创建、初始化、引用。
2.1.1二维数组声明:

//语法格式:
Type arrayName[][];
//或者
Type[][] arrayName;

//例如:
int intArray[][];
//或者
int [][] int Array;

2.2.2二维数组的创建:

//语法格式:
arrayName=new Type[length1][length2];
//length1表示二维数组的行数,length2表示二维数组的列数

//例如
int a[];//声明二维数组
a=new int[4][5];//创建二维数组

要注意的是,Java语言不要求多维数组的每一维的长度一样,各行各列的数可以不相同。

//语法格式:
Type arratName[][];
arrayName=new Type[length1][];//指定行数
arrayName[0]=new Type[length20];//为第0行创建length20列
arrayName[1]=new Type[length21];//为第一行创建length21列
//例如
int a[][];
a=new int[2][];
a[0]=new int[3];
a[1]=new int[4];
//指定一个2行的二维数组(列数还不知道);第一行为3列,第二行4列。

2.2.3二维数组的初始化
和一维数组一样在声明的时候可以对二维数组进行赋值的初始化。

//例如
int a[][]={{1,2,3},{4,5,6}};//初始化一个两行三列的二维数组
//声明、创建、初始化一个三行的二维数组
int [][]myArray;
myArray=new int[3][];//创建并指定行数
myArray[0]=new int[3];//第0行三列
int[] x={0,2};//规定一个2列的数组
int[] y={0,1,2,3,4,5}//规定一个6列的数组
myArray[1]=x;//第1行2列
myArray[2]=y;//第2行6列

2.2.4二维数组的引用
同一维数组一样可以通过组名和数组的下标来引用
格式为:arrayName[arrayIndex1][arrayIndex2]

需要特别注意的是:数组元素的下标的最大值为length-1!是从0开始记录!

猜你喜欢

转载自blog.csdn.net/weixin_45661303/article/details/107394040