DAY7 矩阵元素相加

1.程序入口点

1.1导入语句

package basic;

import java.util.Arrays;

这是一个导入语句,用于引入java.util包中的Arrays类。

1.2.方法调用
调用名为matrixElementSumTest的方法,用于测试矩阵元素求和。
调用名为matrixAdditionTest的方法,用于测试矩阵加法。

package basic;

public static void main(String args[]) {
	    matrixElementSumTest();
	    
	    matrixAdditionTest();

2.计算一矩阵中所有元素的总和(matrixElementSumTest方法)

2.1
接受一个二维数组(矩阵)作为参数,并计算该矩阵中所有元素的总和。
int[][] paraMatrix: 方法的参数,代表一个二维整型数组,通常用于表示矩阵。

package basic;

public static int matrixElementSum(int[][] paraMatrix) {

2.2嵌套循环

  • 外层循环
    当 i 小于行数时,循环将继续执行。且每次循环结束后,i 自增 1,向下移动到下一行。故这个外层循环负责遍历矩阵的每一行。

  • 内层循环
    当 j 小于列数时,循环将继续执行。且每次循环结束后,j 自增 1,向右移动到下一列。故这个内层循环负责遍历当前行的每一个元素。

整个嵌套循环的功能是在一个二维数组(矩阵)中遍历每一个元素。因此,对于一个矩阵paraMatrix,这个嵌套循环将会执行总共行数 * 列数次迭代,从而访问每一个元素。

package basic;

public static int matrixElementSum(int[][] paraMatrix) {
	    int resultSum = 0;
	    for (int i = 0; i < paraMatrix.length; i++) {
	        for (int j = 0; j < paraMatrix[0].length; j++) {
	            resultSum += paraMatrix[i][j];
	        } // Of for j
	    } // Of for i
	    
	    return resultSum;
	}// Of matrixElementSum

2.3
创建一个 3 行 4 列的二维数组 tempMatrix,并将其所有元素初始化为 0。

嵌套循环:
外层循环遍历矩阵的每一行,i 的取值为0到2(对应于 3 行)。
内层循环遍历当前行的每一列,j 的取值为0到3(对应于 4 列)。

在每次内层循环中,tempMatrix[i][j] 被赋值为 i * 10 + j

package basic;

	    int[][] tempMatrix = new int[3][4];
	    for (int i = 0; i < tempMatrix.length; i++) {
	        for(int j = 0; j < tempMatrix[0].length; j++) {
	            tempMatrix[i][j] = i * 10 + j;
	        } // Of for j
	    } // Of for i

矩阵打印:使用Arrays.deepToString(tempMatrix)将二维数组tempMatrix转换为字符串格式,并打印该矩阵。

什么是deepToString方法?Arrays.deepToString方法是java.util.Arrays类中的一个静态方法,用于以字符串形式表示多维数组。它会递归地检查数组的每一层,并生成一个易于阅读的字符串格式。

package basic;

System.out.println("The matrix is: \r\n" + Arrays.deepToString(tempMatrix));

输出:
The matrix is:
[[0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23]]

求和与输出:
调用matrixElementSum(tempMatrix)方法,传入tempMatrix,以计算矩阵中所有元素的总和。并且返回矩阵元素的和。
"\r\n"什么意思?\r - 回车符(Carriage Return),通常用于将光标移动到当前行的开头。\n - 换行符(Line Feed),通常用于将光标移动到下一行。

package basic;

System.out.println("The matrix element sum is: " + matrixElementSum(tempMatrix) + "\r\n");

3.对两个矩阵进行加法运算(matrixAdditionTest方法)

3.1
int[][]:这个方法返回一个矩阵。
int[][] paraMatrix1 和 int[][] paraMatrix2:方法接受两个参数,分别表示要相加的两个矩阵。

package basic;

public static int[][] matrixAddition(int[][] paraMatrix1, int[][] paraMatrix2)

创建一个新的二维数组(结果矩阵)resultMatrix,其大小与paraMatrix1相同。
paraMatrix1.length表示行数,paraMatrix1[0].length表示列数。

package basic;

int[][] resultMatrix = new int[paraMatrix1.length][paraMatrix1[0].length];

嵌套循环遍历矩阵,对于每个位置 (i, j),将paraMatrix1和paraMatrix2中对应位置的元素相加,并将结果存储在结果矩阵resultMatrix中。最后返回加法后的结果矩阵resultMatrix。

package basic;

for (int i = 0; i < paraMatrix1.length; i++) {
	        for (int j = 0;j < paraMatrix1[0].length; j++) {
	            resultMatrix[i][j] = paraMatrix1[i][j] + paraMatrix2[i][j];
	        } // Of for j
	    } // Of for i
	    
	    return resultMatrix;

3.2
同样创建一个3 行 4 列名为tempMatrix的矩阵。进行嵌套循环,并打印原始矩阵以及新矩阵。

package basic;

public static void matrixAdditionTest() {
	    int[][] tempMatrix = new int[3][4];
	    for (int i = 0; i < tempMatrix.length; i++) {
	        for(int j = 0; j < tempMatrix[0].length; j++) {
	            tempMatrix[i][j] = i * 10 + j;
	        } // Of for j
	    } // Of for i
	    
	    System.out.println("The matrix is: \r\n" + Arrays.deepToString(tempMatrix));
	    int[][] tempNewMatrix = matrixAddition(tempMatrix,tempMatrix);
	    System.out.println("The new matrix is: \r\n" + Arrays.deepToString(tempNewMatrix));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值