什么是数组
数组是储存同一种数据类型的集合,也可以看做是一种容器,Array数组标志是[]
数组中的元素可以通过下标来获取
数组的下标是从0开始依次递增,直到最后一个元素,数组的最大下标是数组长度-1
数组的长度用length来表示,数组一旦创建长度不可改变,数组的长度可以为0
数组的创建
1.动态创建
int[] a = new int[5]; //int[5],数组的长度为5,长度并不等同于下标
2.静态初始化
int[] a = new int[5]{1,2,3,4,5};
int[] a = {1,2,3,4,5};
程序是如何创建数组的
例如:int[] a = new int[]{1,2,3,4,5};
1.首先在内存中开辟出一块连续的空间,用来存放数组,长度为5
2.完成数组初始化,给每个元素赋予默认值
3.生成数组的唯一地址值
4.将数组的唯一地址值交给变量a来保存
数组的存储与遍历
//数组存储数据
int[] a = new int[5];//定义一个长度为5的动态数组
//a = {1,2,3,4,5} //可以通过直接赋值进行数据的存储
for(int i=0;i<a.length-1;i++){//for循环存储数据
a[i] = i+1; //a[i] 根据下标获取元素
}
System.out.println(Array.toString(a));//[1,2,3,4,5]
//我们不可以直接输出a数组
//因为程序创建数组的过程中是将地址值保存到a对象中
//直接输出a结果是地址值,所以我们要添加toString()方法
//for循环遍历数组
int[] a = new int[]{1,2,3,4,5};
for(int i = 0;i<a.length-1;i++){
System.out.println(a[i]);//这里我们通过下标获取到元素了
}//循环结束输出1,2,3,4,5
什么是二维数组
二维数组是指一个元素为数组的数组
二维数组的定义
例如1: int[][] a = new int[m][n];
其中m表示这个二维数组有多少个一维数组
n表示每个一维数组有多少个元素
例如2: int[][] a = new int[3][];动态给出每个数组的元素
例如3: int[][] a = new int[][]{{...},{...},{...}};
二维数的遍历
//创建二维数组
int[][] a = new int[][]{{1,6},{2,8},{1,2,3}};
//我们先对a数组进行解析
// 1 6
//a[0][0] a[0][1]
// 2 8
//a[1][0] a[1][1]
// 1 2 3
//a[2][0] a[2][1] a[2][3]
//a.length代表获取二维数组a数组的长度
//a[1].length代表二维数组a数组中第2个一维数组的长度
for(int i=0;i<a.length-1;i++){
for(int j=0;j<a[1].length<1;j++){
System.out.print(a[i][j]);//不换行
}
System.out.println();//换行,方便观察结果
}