java实现矩阵乘法
时间: 2024-11-18 22:14:58 浏览: 15
Java实现的矩阵乘法示例
在Java中,矩阵乘法通常涉及两个二维数组(矩阵)。由于矩阵乘法的规则是第一个矩阵的列数必须等于第二个矩阵的行数,我们可以创建一个递归方法来完成这个过程。以下是矩阵乘法的一个简单实现:
```java
public class MatrixMultiplication {
public static int[][] multiply(int[][] matrixA, int[][] matrixB) {
if (matrixA == null || matrixB == null || matrixA[0].length != matrixB.length) {
throw new IllegalArgumentException("Matrix dimensions do not match for multiplication.");
}
int rowsA = matrixA.length;
int colsA = matrixA[0].length;
int rowsB = matrixB.length;
int colsB = matrixB[0].length;
int[][] result = new int[rowsA][colsB];
for (int i = 0; i < rowsA; i++) {
for (int j = 0; j < colsB; j++) {
for (int k = 0; k < colsA; k++) {
result[i][j] += matrixA[i][k] * matrixB[k][j]; // 计算对应元素的值
}
}
}
return result;
}
}
```
上面的代码首先检查输入矩阵的维度是否满足相乘条件,然后创建一个新的结果矩阵,接着遍历三个嵌套循环来计算每个结果矩阵元素的值。
如果你想测试这个功能,可以像这样使用:
```java
int[][] A = { {1, 2}, {3, 4} };
int[][] B = { {5, 6}, {7, 8} };
int[][] C = MatrixMultiplication.multiply(A, B);
for (int[] row : C) {
for (int element : row) {
System.out.print(element + " ");
}
System.out.println();
}
```
这将输出矩阵乘积的结果。
阅读全文