一、数组的常识
1、数组:可存储多个相同类型数据的容器。数组中的所有元素保存在堆内存中。创建一个数组就是在堆中创建一个数组对象。
2、数组创建后立即拥有默认值。
3、所有数组的索引都是从0开始的。
4、数组是连续分配内存的。
5、数组中的每一个元素相当于一个变量,用于存储数据。
6、数组没有存储数据的都存在一个默认值,默认值根据定义数组类型确定,例如int数组为0,float数组为0.0。
7、数组中的元素可以是任何数据类型,包括基本数据类型和引用类型。
8、Java语言中声明数组时不能指定其长度,要通过new对象进行指定其长度。

二、数组定义、对象实例初始化

1、定义并对象实例初始化 
 int a[ ] =new int[5] //创建一个int类型能存储5个元素的a数组。2、先定义,后对象实例初始化 
 int a[]; //先定义 
 a=new int [5]; //对象实例初始化

三、创建初始化

1、创建初始化1

int a[ ] ; 
 a=new int [ ] {1,2,3,4,5};

2、创建初始化2

数组类型 数组名[ ] = new 数据类型[ ]{元素1,元素2,…} 
 int a [ ]=new int [ ]{1,2,3,4,5};

3、创建初始化3(最简单方式,最常用)

数组类型 数组名[ ] = {元素1,元素2,…} 
 int a[]={1,2,3,4,5};4、a[0]=98、a[2]=98 //数组中的元素相当于一个变量存储数据

四、数组的访问
利用for循环语句,将循环控制变量作为数组下标,利用length遍历数组。数组名.length 可以计算数组的长度。

五、数组的异常(Exception)

数组越界异常:访问的数组下标超出了定义的范围。

java数组定义list_数组名

六、堆栈
int arr[ ] = new int[5];
生成栈内存 栈内存指向堆内存 生成堆内存(不规则的)
因为数组是应用类型的数据,所以存放在堆中。

java数组定义list_java_02

七、多维数组

1、JAVA中没有真正的数组,只有数组的数组。
2、打印二维数组所有元素使用二层的for循环。 
 第一层:arr.length 
 第二层:arr[i].length3、Java中多维数组不一定是规则矩阵形式。
4、必须声明行的个数,列数可以省略。 
 数组名 = new 数据元素类型[ 行数 ] [ 列数 ] ;5、C语言不支持非矩阵数组。
6、数组常用的操作 
 数组复制:System.arrayCopy(); 
 数组排序:Arrays.sort(); 
 把arr数组以字符串输出:Array.ToString(arr);