Java基础知识
二维数组
一维数组:一维数组的元素是基本类型,引用类型。
二维数组:二维数组的元素是一维数组的数组,数组嵌套数组。
动态初始化:我们定义长度,系统默认初始值。
int[][] arr=new int[3][2];
定义了一个int类型的二维数组,数组长度是3,这个数组中放置了数字长度为2的一维数组。
int[][] arr=new int[3][ ];
后面[ ]不填的话,默认是一维数组的引用类型,即为null。
后面[ ]填的话,在创建二维数组的元素时,会初始化二维数组中的一维数组。
静态初始化:我们给数组赋初始值,系统计算长度。
int[][] arr={
{1,2,3},{4,5,6},{7,8,9}};
数组中最后一个元素的索引=数组的长度-1
二位数组的遍历:外循环控制的是二维数组的长度,内循环控制的是一维数组的长度。
案例程序分析1:
public class test {
public static void main(String[] args) {
//二维数组的遍历
int[][] arr = {
{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
for (int j = 0; j < arr[i].length; j++) {
System.out.println(arr[i][j]);
}
}
}
}
案例程序分析2:
public class test2 {
public static void main(String[] args) {
int[][] arr=new int[2][]; //null null
//手动创建两个一维数组
int[] minArr1=new int[3];
System.out.println(minArr1);//打印一维数组的地址:[I@1540e19d
int[] minArr2 = new int[2];
System.out.println(minArr2);//打印一维数组的地址:[I@677327b6
minArr2[1]=300;
//把上面的两个一维数组装到二维数组里面去
arr[0]=minArr1;
arr[1]=minArr2;
System.out.println(arr[0]);//打印数组的地址:[I@1540e19d
System.out.println(arr[1]);//打印数组的地址:[I@677327b6
arr[0][0]=100;
arr[0][1]=200;
System.out.println(minArr1[0]);//100