Java中的矩阵程序
矩阵是一个矩形数组,其中元素按照行和列进行排列。在本教程中,我们将会看一些用Java编写的矩阵程序。
矩阵的图形化呈现

使用Java编写的矩阵
我们可以在Java中使用二维数组来实现矩阵。可以通过索引”array[r][c]”来访问位于行“r”和列“c”的元素。
在Java中的矩阵程序
因为我们使用二维数组来创建矩阵,所以可以很容易地对其元素进行各种操作。在本教程中,我们将学习如何从用户输入创建矩阵。然后,我们将对两个矩阵进行加法、减法和乘法运算,并在控制台上打印结果矩阵。
1. 矩阵相加
这是一个简单的程序,用来从用户输入中填充两个矩阵。然后,将它们在相应索引位置的元素相加,得到矩阵的和。最后,我们将打印出这两个矩阵的和。
package com.Olivia.examples;
import java.util.Scanner;
public class MatrixPrograms {
public static void main(String[] args) {
System.out.println("Please enter the rows in the matrix");
Scanner sc = new Scanner(System.in);
int row = sc.nextInt();
System.out.println("Please enter the columns in the matrix");
int column = sc.nextInt();
int[][] first = new int[row][column];
int[][] second = new int[row][column];
for (int r = 0; r < row; r++) {
for (int c = 0; c < column; c++) {
System.out.println(String.format("Enter first[%d][%d] integer", r, c));
first[r][c] = sc.nextInt();
}
}
for (int r = 0; r < row; r++) {
for (int c = 0; c < column; c++) {
System.out.println(String.format("Enter second[%d][%d] integer", r, c));
second[r][c] = sc.nextInt();
}
}
// close the scanner
sc.close();
// print both matrices
System.out.println("First Matrix:\n");
print2dArray(first);
System.out.println("Second Matrix:\n");
print2dArray(second);
// sum of matrices
sum(first, second);
}
// below code doesn't take care of exceptions
private static void sum(int[][] first, int[][] second) {
int row = first.length;
int column = first[0].length;
int[][] sum = new int[row][column];
for (int r = 0; r < row; r++) {
for (int c = 0; c < column; c++) {
sum[r][c] = first[r][c] + second[r][c];
}
}
System.out.println("\nSum of Matrices:\n");
print2dArray(sum);
}
private static void print2dArray(int[][] matrix) {
for (int r = 0; r < matrix.length; r++) {
for (int c = 0; c < matrix[0].length; c++) {
System.out.print(matrix[r][c] + "\t");
}
System.out.println();
}
}
}

2. 两个矩阵相减 gè
这里是一个函数,用来将第二个矩阵的元素从第一个矩阵中减去,并打印结果矩阵。
private static void subtract(int[][] first, int[][] second) {
int row = first.length;
int column = first[0].length;
int[][] sum = new int[row][column];
for (int r = 0; r < row; r++) {
for (int c = 0; c < column; c++) {
sum[r][c] = first[r][c] - second[r][c];
}
}
System.out.println("\nSubtraction of Matrices:\n");
print2dArray(sum);
}
3. 矩阵相乘
以下方法将会对矩阵的元素进行乘法操作并打印结果矩阵。
private static void multiply(int[][] first, int[][] second) {
int row = first.length;
int column = first[0].length;
int[][] sum = new int[row][column];
for (int r = 0; r < row; r++) {
for (int c = 0; c < column; c++) {
sum[r][c] = first[r][c] * second[r][c];
}
}
System.out.println("\nMultiplication of Matrices:\n");
print2dArray(sum);
}
参考来源:维基百科