数组的练习示例展示:
package arrayList; /** * 矩阵的集中运算法则:求和,求积,求逆矩阵,转置矩阵...... * @author Drew * */ public class Arrays { /** * 两个二维数组(矩阵)求和。 * @param a 矩阵(二维数组) * @param b 矩阵(二维数组) * @return 返回一个矩阵(二维数组) */ public static int[][] add(int [][] a,int [][] b) { int [][] c = new int[a.length][b.length]; for(int i = 0; i<c.length; i++) { for(int j = 0; j < c.length; j++) { c[i][j] = a[i][j] + b[i][j]; } } return c; } /** * 直接打印出每个矩阵的值 * @param arr */ public static void print(int [][] arr) { for(int i = 0; i < arr.length; i++) { for(int j = 0; j < arr.length; j++) { System.out.print(arr[i][j] + " ");//输出每一个数组中的值 } System.out.println();//将数组按行输出。 } } /** * 矩阵的乘法 * @param a 矩阵(二维数组) * @param b 矩阵(二维数组) * @return 返回一个矩阵(二维数组) */ public static int[][] multiplication(int [][] a,int [][] b) {//矩阵的乘法运算法则有问题。见Matrix.java的具体案例。 int[][] c = new int[a.length][b.length]; for(int i = 0; i<c.length; i++) { for(int j = 0; j < c.length; j++) { c[i][j] = a[i][j]*b[i][j]; } } return c; } /** * 主函数方法,用于测试矩阵的运算法则。 * @param args */ public static void main(String[] args) { int [][] a = {{1,2}, {3,4}}; int [][] b = {{10,20}, {30,40}}; System.out.println("--------矩阵a"); print(a); System.out.println("--------矩阵b"); print(b); System.out.println("============数组的基本运算法则:=============="); System.out.println("--------矩阵加法----------"); int [][] c = add(a, b); print(c); System.out.println("--------矩阵乘法----------"); int [][] d = multiplication(a, b); print(d); /*int [][] c = new int[2][2];//二阶矩阵(Matrix) for(int i = 0; i<c.length; i++) { for(int j = 0; j < c.length; j++) { c[i][j] = a[i][j] + b[i][j]; System.out.print(c[i][j] + " "); } }*/ //多维数组很少见 /*int [][][][] b = new int [1][2][2][1]; b[0][0][0][0] = 34; b[0][0][1][0] = 45; for(int i = 0; i<b.length; i++) { for(int j = 0; j < b.length; j++) { for(int c = 0; c < b.length; c++) { for(int f = 0; f < b.length; f++) { System.out.println(b[i][j][c][f] + " "); } } } }*/ } }
结果展示:
这是一个小小的二维数组实例展示!你可以自己尝试着去完成矩阵的转置和求逆矩阵。