public class MatrixCalculate {public final static int OPERATION_ADD = 1; public final static int OPERATION_SUB = 2; public final static int OPERATION_MUL = 4; //矩阵相加 public float[][] add(float[][] matrixa, float[][] matrixb) { if(legalOperation(matrixa, matrixb, OPERATION_ADD)) { for(int i=0; i〈matrixa。length; i++) { for(int j=0; j〈matrixa[0]。length; j++) { matrixa[i][j] = matrixa[i][j] + matrixb[i][j]; } } return matrixa; } else { return null; } } //矩阵相减public float[][] substract(float[][] matrixa, float[][] matrixb) { if(legalOperation(matrixa, matrixb, OPERATION_SUB)) { for(int i=0; i〈matrixa。length; i++) { for(int j=0; j〈matrixa[0].length; j++) { matrixa[i][j] = matrixa[i][j] - matrixb[i][j]; } } return matrixa; } else { return null; } } /** * * @param matrixa * @param matrixb */ //矩阵左除public float[][] leftDivide(float[][] matrixa, float[][] matrixb) {matrixa=inverseMatrix(matrixa);float[][] result = multiplication(matrixa, matrixb);return result; }//矩阵右除public float[][] rightDivide(float[][] matrixa, float[][] matrixb) {matrixb=inverseMatrix(matrixb);float[][] result = multiplication(matrixa, matrixb);return result; }//矩阵相乘public float[][] multiplication(float[][] matrixa, float[][] matrixb) { if(legalOperation(matrixa, matrixb, OPERATION_MUL)) { float[][] result = new float[matrixa.length][matrixb[0].length]; for(int i=0; i