【JavaSE】Java基础语法(七):二维数组

简介: 【JavaSE】Java基础语法(七):二维数组

🪂1. 二维数组概述


概述 : 二维数组也是一种容器,不同于一维数组,该容器存储的都是一维数组容器



🪂2. 二维数组动态初始化


动态初始化格式:


数据类型[][] 变量名 = new 数据类型[m][n];
m表示这个二维数组,可以存放多少个一维数组
n表示每一个一维数组,可以存放多少个元素


public class Demo1Array {
  public static void main(String[] args) {
  // 数据类型[][] 变量名 = new 数据类型[m][n];
  int[][] arr = new int[3][3];
  /*
    [[I@10f87f48
    @ : 分隔符
    10f87f48 : 十六进制内存地址
    I : 数组中存储的数据类型
    [[ : 几个中括号就代表的是几维数组
  */
  System.out.println(arr);
  /*
    二维数组存储一维数组的时候, 存储的是一维数组的内存地址
  */
  System.out.println(arr[0]);
  System.out.println(arr[1]);
  System.out.println(arr[2]);
  System.out.println(arr[0][0]);
  System.out.println(arr[1][1]);
  System.out.println(arr[2][2]);
  // 向二维数组中存储元素
  arr[0][0] = 11;
  arr[0][1] = 22;
  arr[0][2] = 33;
  arr[1][0] = 11;
  arr[1][1] = 22;
  arr[1][2] = 33;
  arr[2][0] = 11;
  arr[2][1] = 22;
  arr[2][2] = 33;
  }
}


🪂3. 二维数组访问元素的细节问题


问题 : 二维数组中存储的是一维数组, 那能不能存入 [提前创建好的一维数组] 呢 ?


答 : 可以的


public static void main(String[] args) {
  int[] arr1 = {11,22,33};
  int[] arr2 = {44,55,66};
  int[] arr3 = {77,88,99,100};
  int[][] arr = new int[3][3];
  arr[2][3] = 100;
  arr[0] = arr1;
  arr[1] = arr2;
  arr[2] = arr3;
  System.out.println(arr[1][2]);
  System.out.println(arr[2][3]);
}


🪂4. 二维数组静态初始化


完整格式 : 数据类型[][] 变量名 = new 数据类型[][]{ {元素1, 元素2…} , {元素1, 元素2…}


简化格式 : 数据类型[][] 变量名 = { {元素1, 元素2…} , {元素1, 元素2…} …};


代码实现 :


public static void main(String[] args) {
  int[] arr1 = {11,22,33};
  int[] arr2 = {44,55,66};
  int[][] arr = {{11,22,33}, {44,55,66}};
  System.out.println(arr[0][2]);
  int[][] array = {arr1,arr2};
  System.out.println(array[0][2]);
}


🪂5. 二维数组遍历


需求 :


已知一个二维数组 arr = {{11, 22, 33}, {33, 44, 55}};


遍历该数组,取出所有元素并打印


代码实现 :


public static void main(String[] args) {
  int[][] arr = {{11, 22, 33}, {33, 44, 55}};
  // 1. 遍历二维数组,取出里面每一个一维数组
  for (int i = 0; i < arr.length; i++) {
    //System.out.println(arr[i]);
    // 2. 在遍历的过程中,对每一个一维数组继续完成遍历,获取内部存储的每一个元素
    //int[] temp = arr[i];
    for (int j = 0; j < arr[i].length; j++) {
      System.out.println(arr[i][j]);
    }
  }
}


🪂6. 二维数组求和


需求 :


某公司季度和月份统计的数据如下:单位(万元)


🌠第一季度:22,66,44


🌠第二季度:77,33,88


🌠第三季度:25,45,65


🌠第四季度:11,66,99


代码实现 :


public static void main(String[] args) {
  // 1. 定义求和变量,准备记录最终累加结果
  int sum = 0;
  // 2. 使用二维数组来存储数据,每个季度是一个一维数组,再将4个一维数组装起来
  int[][] arr = { {22,66,44} , {77,33,88} , {25,45,65} , {11,66,99}};
  // 3. 遍历二维数组,获取所有元素,累加求和
  for (int i = 0; i < arr.length; i++) {
    for(int j = 0; j < arr[i].length; j++){
      sum += arr[i][j];
    }
  }
  // 4. 输出最终结果
  System.out.println(sum);
}


相关文章
|
2月前
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
65 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
2月前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
本系列教程笔记详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。若需快速学习Kotlin,建议查看“简洁”系列教程。本期重点介绍了Kotlin与Java的共存方式,包括属性、单例对象、默认参数方法、包方法、扩展方法以及内部类和成员的互操作性。通过这些内容,帮助你在项目中更好地结合使用这两种语言。
53 1
|
2月前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
37 2
|
2月前
|
存储 Java
【编程基础知识】 分析学生成绩:用Java二维数组存储与输出
本文介绍如何使用Java二维数组存储和处理多个学生的各科成绩,包括成绩的输入、存储及格式化输出,适合初学者实践Java基础知识。
94 1
|
26天前
|
Java
java do while 的语法怎么用?
java do while 的语法怎么用?
39 3
|
2月前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
本系列教程详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速学习Kotlin的用户,推荐查看“简洁”系列教程。本文档重点介绍了Kotlin与Java混编的技巧,包括代码转换、类调用、ProGuard问题、Android library开发建议以及在Kotlin和Java之间互相调用的方法。
34 1
|
2月前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
本教程详细讲解Kotlin语法,适合希望深入了解Kotlin的开发者。若需快速入门,建议查阅“简洁”系列教程。本文重点探讨Kotlin与Java共存的高级话题,包括属性访问、空安全、泛型处理、同步机制及SAM转换等,助你在项目中逐步引入Kotlin。
30 1
|
2月前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
Kotlin语法笔记(28) -Kotlin 与 Java 混编
36 2
|
2月前
|
Java 程序员 编译器
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。本文通过示例详细解析了保留字的定义、作用及与自定义标识符的区别,帮助开发者避免因误用保留字而导致的编译错误,确保代码的正确性和可读性。
63 3
|
2月前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
34 0