Сложение и вычитание матриц в Java: методы и примеры

Чтобы выполнить сложение и вычитание матриц в Java, вы можете использовать различные методы. Вот несколько примеров:

Метод 1: использование вложенных циклов for

public static int[][] addMatrices(int[][] matrix1, int[][] matrix2) {
    int rows = matrix1.length;
    int columns = matrix1[0].length;
    int[][] result = new int[rows][columns];
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < columns; j++) {
            result[i][j] = matrix1[i][j] + matrix2[i][j];
        }
    }
    return result;
}
public static int[][] subtractMatrices(int[][] matrix1, int[][] matrix2) {
    int rows = matrix1.length;
    int columns = matrix1[0].length;
    int[][] result = new int[rows][columns];
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < columns; j++) {
            result[i][j] = matrix1[i][j] - matrix2[i][j];
        }
    }
    return result;
}

Метод 2: использование математической библиотеки Apache Commons
Apache Commons Math — это популярная библиотека Java, обеспечивающая различные математические операции. Вы можете использовать его для сложения и вычитания матриц следующим образом:

import org.apache.commons.math3.linear.MatrixUtils;
import org.apache.commons.math3.linear.RealMatrix;
public static double[][] addMatrices(double[][] matrix1, double[][] matrix2) {
    RealMatrix rm1 = MatrixUtils.createRealMatrix(matrix1);
    RealMatrix rm2 = MatrixUtils.createRealMatrix(matrix2);
    RealMatrix result = rm1.add(rm2);
    return result.getData();
}
public static double[][] subtractMatrices(double[][] matrix1, double[][] matrix2) {
    RealMatrix rm1 = MatrixUtils.createRealMatrix(matrix1);
    RealMatrix rm2 = MatrixUtils.createRealMatrix(matrix2);
    RealMatrix result = rm1.subtract(rm2);
    return result.getData();
}

Обратите внимание, что это всего лишь несколько примеров, и в Java существует множество способов сложения и вычитания матриц.