我的个人博客主页:如果'\'真能转义1️⃣说1️⃣的博客主页
关于Java基本语法学习---->可以参考我的这篇博客:(我在Vscode学Java)
接上回Java一维数组的介绍(我在VScode学Java(Java一维数组) )
二维数组是Java中的一种数据结构,它可以被看作是一个由多个一维数组组成的数组。每个一维数组都代表着一个行,而这些一维数组的长度可以不同。 [用于存储表格数据,例如矩阵、棋盘等等。]
Java使用大端字节序的优势在于它可以更容易地在不同系统之间进行互操作。这是因为大端字节序是网络协议和文件格式中最广泛使用的字节序。[进行通信和交换数据。]
目录
Java二维数组创建
创建形式
Java数组-- >为每一维分配空间
从高维开始进行数组初始化的例子:
Java二维数组创建
Java中创建二维数组,可以使用以下语法:
//Length1 和 Length2 是整数 【左行右列】
type[][] typeName = new type[Length1][Length2];
//拥有以下3种格式
type[][] arrayName = new type[][]{值 1,值 2,值 3,…,值 n}; // 在定义时初始化
type[][] arrayName = new type[Length1][Length2]; // 给定空间,在赋值
type[][] arrayName = new type[Length1][]; // 数组第二维长度为空,可变化
创建形式
int[][] arrayName = new int[rows][columns];
//创建一个具有3行和4列的二维数组
int[][] arrayName = new int[3][4];
数组名 = new 数据类型[第1维的长度][];
//单独初始化每一行来创建二维数组
int[][] arrayName = new int[3][];
arrayName[0] = new int[4];
arrayName[1] = new int[5];
arrayName[2] = new int[6];
要初始化一个二维数组,可以先创建一个具有所需行数的数组,然后为每一行分配空间,方法是将一个具有所需列数的新数组分配给每一行。
Java数组-- >为每一维分配空间
从高维开始进行数组初始化的例子:
a = new int[3][]; // 先为第一维分配空间,注意这时没有为第二维分配空间
a[0] = new int[2]; // 然后为第二维的每一个元素(数组)分配空间
a[1] = new int[1];
a[2] = new int[3];
Java二维数组实现算法
对于矩阵运算,存储矩阵的值,执行加法、减法和乘法等操作。
对于图像处理,表示图像的像素,并对图像应用滤镜或变换。
对于图算法,表示图的邻接矩阵,并执行查找两个节点之间的最短路径等操作
矩阵运算-->乘法
int[][] matrix1 = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}};
int[][] matrix2 = {{1, 2}, {3, 4}, {5, 6}, {7, 8}, {9, 10}};
int[][] result = new int[2][2];
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
for (int k = 0; k < 5; k++) {
result[i][j] += matrix1[i][k] * matrix2[k][j];
}
}
}
// 打印结果
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
System.out.print(result[i][j] + " ");
}
System.out.println();
}
九九乘法表:
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
table[i][j] = (i + 1) * (j + 1);
}
}
for (int i = 0; i < 9; i++) {
for (int j = i; j < 9; j++) {
System.out.print((i+1) + "*" + (j+1) + "=" + table[i][j] + "\t");
}
System.out.println();
}