[java]代码库
/**
* 矩阵减法运算。 矩阵A和B可减的条件是矩阵A的行数等于矩阵B的行数,A的列数等于B的列数 c[i][j] = a[i][j] + b[i][j]
*
* @param b
* 减数
* @return
*/
public Matrix sub(Matrix b) {
if (b == null) {
return null;
}
Matrix c = null;
double[][] bData = b.getMatrixData();
if ((this.matrixData.length != bData.length)
|| (this.matrixData[0].length != bData[0].length)) {
System.out.println("两个矩阵的大小不一致,不能完成减法运算");
return c;
}
// 结果矩阵的数据
int cRow = this.matrixData.length;
int cColumn = this.matrixData[0].length;
double[][] cData = new double[cRow][cColumn];
for (int i = 0; i < cRow; i++) {
for (int j = 0; j < cColumn; j++) {
// 两矩阵对应位置的数字做减法
cData[i][j] = this.matrixData[i][j] - bData[i][j];
}
}
c = new Matrix(cData);
return c;
}