1.二维数组的内存地址:
2.二维数组的基本使用:
package com.erweishuzu.com;
import java.util.Random;
/*
-
一、数组概述:
-
1.数组的理解:我们可以看成是一维素组Array1又作为另一个一维数组Array2的元素而存在。
-
其实,从数组底层的运行机制来看,没有多维数组。
-
2.二维数组的使用:
-
二维数组的声明和初始化
-
如何调用数组指定那个位置的元素
-
如何获取数组的长度
-
如何遍历数组
-
数组元素的默认初始化值
-
针对初始化方式一:int[][] arr = new int[3][4];
-
外层元素的初始化值为:地址值
-
内层元素的初始化值为:与一维数组初始化值一样
-
针对初始化方式一:int[][] arr = new int[3][];
-
外层元素的初始化值为:null
-
内层元素的初始化值为:不能调用,否则报错
-
数组的内存解析
*/
public class ArrayTwoDemo {
public static void main(String[] args) {Random rd = new Random();//随机数对象 //1.二维数组的声明和初始化 //静态初始化 int[][] arr0 = new int[][] {{12,23},{10,5},{45,20}}; //动态初始化1 int[][] arr1 = new int[5][2];//定义一个二维数组 //动态初始化2 int[][] arr2 = new int[10][]; String[][] arr3 = new String[3][2]; //这也是正确的写法 int[] arr4[] = new int[][] {{1,2,3},{4,5},{6,7,8}}; int[] arr5[] = {{1,2,3},{4,5},{6,7,8}}; //给二维数组赋随机值 for (int i = 0; i < arr1.length; i++) { for(int j = 0; j < arr1[i].length; j++) { arr1[i][j] = rd.nextInt(10); } } //获取指定位置的值: System.out.println(arr1[1][0]); //获取数组的长度: System.out.println(arr1.length); //获取的是二维数组里的一维数组个数 System.out.println(arr1[1].length);//获取的是每个一维数组的长度 //遍历输出数组; for (int i = 0; i < arr1.length; i++) { for(int j = 0; j < arr1[i].length; j++) { System.out.print(arr1[i][j] + " "); } System.out.println(); } //二维数组的默认值: System.out.println(arr1[0]);//打印的是一维数组的内存地址 System.out.println(arr1[0][1]);//打印的是随机赋值的数 System.out.println(arr1);//打印的是二维数组的内存地址
}
}