小言_互联网的博客

8.javase_数组2

295人阅读  评论(0)

一 . 二维数组
(1)二维数组
元素为一维数组的数组
(2)定义格式:
数据类型[][] 变量名; int[][] arr;
数据类型 变量名[][]; int arr[][];
数据类型[] 变量名[]; int[] arr[];

二.二维数组初始化
(1)静态初始化
格式:数据类型[][] 变量名 = new 数据类型[][]{ {元素…},{元素…},{元素…},…};
范例:int[][] arr = new int[][]{ {1,2,3},{4,5,6},{7,8,9}};
注意:一维数组中元素的个数可以是不同的
举例: int[][] arr = new int[][]{ {1,2,3},{4,5},{6,7,8,9}};

(2)动态初始化
格式:数据类型[][] 变量名 = new 数据类型[m][n];
范例:int[][] arr = new int[2][3];

三.二维数组元素访问
(1)访问二维数组格式
获取二维数组:数组名
获取每一个一维数组:数组名[索引]
获取每一个二维数组元素:数组名[索引][索引]

 (2)访问二维数组案例
    int[][] arr = {
  {1, 2, 3}, {4, 5, 6}};
    System.out.println(arr); //输出数组名 [[I@776ec8df
    System.out.println(arr[0]); //输出二维数组中的一维数组名  [I@4eec7777
    System.out.println(arr[0][0]); //输出数组具体元素

四.二维数组内存图

五.二维数组常见操作
(1)二维数组的遍历
需求:已知一个二维数组 arr = { {1,2,3},{4,5,6},{7,8,9}}; 请把元素在控制台输出

public class ArrayTest01 {
   
			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++) {
   
					for (int j = 0; j < arr[i].length; j++) {
   
						System.out.print(arr[i][j]+" ");
					}
				}
			}
		}

(2)二维数组元素打乱
需求:已知二维数组 arr = { {1,2,3},{4,5,6},{7,8,9}};用程序实现把数组中的元素打乱,并在控制台输出打乱后的数组元素

public class ArrayTest02 {
   
			public static void main(String[] args) {
   
				//1.定义二维数组,并进行静态初始化
				int[][] arr = {
   {
   1, 2, 3}, {
   4, 5, 6}, {
   7, 8, 9}};
				//2.创建随机数对象
				Random r = new Random();
				//遍历二维数组,进行元素打乱
				for (int i = 0; i < arr.length; i++) {
   
					for (int j = 0; j < arr[i].length; j++) {
   
						int x = r.nextInt(arr.length);
						int y = r.nextInt(arr[x].length);
						//元素交换
						int temp = arr[i][j];
						arr[i][j] = arr[x][y];
						arr[x][y] = temp;
					}
				}
				//遍历二维数组输出
				for (int i = 0; i < arr.length; i++) {
   
					for (int j = 0; j < arr[i].length; j++) {
   
						System.out.println(arr[i][j]);
					}
				}
			}
		}

 

转载:https://blog.csdn.net/jinhuding/article/details/128210196
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场