1 // MatrixVar.java
2
3 /** 4 * MatrixVar zeigt den Umgang mit mehrdimensionalen Feldern. 5 * Beispielprogramm zur Programmiertechnik 1, Teil 2. 6 * @author H.Drachenfels 7 * @version 7.1.2019 8 */
9 public final class MatrixVar {
10 private MatrixVar() { }
11
12 /** 13 * main ist der Startpunkt des Programms. 14 * @param args wird nicht verwendet. 15 */
16 public static void main(String[] args) {
17 int[][] matrix = new int[][] {new int[] {10, 11, 12},
18 new int[] {20, 21, 22}};
19 //int[][] matrix = {{10, 11, 12}, {20, 21, 22}};
20
21 for (int i = 0; i < matrix.length; ++i) {
22 for (int j = 0; j < matrix[i].length; ++j) {
23 System.out.printf("%3d", matrix[i][j]);
24 }
25
26 System.out.println();
27 }
28
29 // fuer Kopie clone() pro Speicherbereich erforderlich
30 int[][] anotherMatrix = matrix.clone();
31 for (int i = 0; i < matrix.length; ++i) {
32 anotherMatrix[i] = matrix[i].clone();
33 }
34
35 matrix[0][0] = 0;
36 matrix[1][0] = 0;
37
38 for (int i = 0; i < anotherMatrix.length; ++i) {
39 for (int j = 0; j < anotherMatrix[i].length; ++j) {
40 System.out.printf("%3d", anotherMatrix[i][j]);
41 }
42
43 System.out.println();
44 }
45 }
46 }
47