Hallo,
in diesem beispiel, wird ein 2 Dimensionales Array deklariert. Sprich es werden zuerst zwei ein Dimensionale Arrays deklariert und dann unte in int [][] dim2 ... zu ein zweidimensionales Array zusammengesetzt.
So der Professor hat dann mit 2 verschiedenen Arten die Summe des Arrays gebildet. Die das mit der For each Schleife versteh ich zu 0. Deswegen versuche ich gerade erstmal das mit den normalen 2 For Schleifen nach zu voll ziehen.
dim2.length ist ja anscheinend 2.(das müssten dann die zeilen sein.
Warum denn , wie kann man das behaupten ich mein wenn Ich ein Array mit
int[] a = new [10]; Dekl. dann kann ich sagen die Länge ist 9 aber bei den 2 Dimensionales versteh ich das nicht.
dim2[zeile].length und das ist 5.Warum steht da zeile in der eckigen Klammer?
Freu mich auch hilfreiche und ausführliche antworten danke.
in diesem beispiel, wird ein 2 Dimensionales Array deklariert. Sprich es werden zuerst zwei ein Dimensionale Arrays deklariert und dann unte in int [][] dim2 ... zu ein zweidimensionales Array zusammengesetzt.
So der Professor hat dann mit 2 verschiedenen Arten die Summe des Arrays gebildet. Die das mit der For each Schleife versteh ich zu 0. Deswegen versuche ich gerade erstmal das mit den normalen 2 For Schleifen nach zu voll ziehen.
dim2.length ist ja anscheinend 2.(das müssten dann die zeilen sein.
Warum denn , wie kann man das behaupten ich mein wenn Ich ein Array mit
int[] a = new [10]; Dekl. dann kann ich sagen die Länge ist 9 aber bei den 2 Dimensionales versteh ich das nicht.
dim2[zeile].length und das ist 5.Warum steht da zeile in der eckigen Klammer?
Code:
// dieses Programm bildet die Summe eines zweidimensionales Array!
class Arrays {
int[] feld = {1,2,3}; // 1.zeile
int[] prim = {2,3,5,7,11}; // 2.zeile
String[] worte = {"eins","zwei"};
int[][] dim2 = {feld,prim};
// dim2 ist ein Array von int-Arrays
// Summe über dim2
int summe() {
int erg = 0;
for(int[] zeile : dim2) {
for(int x : zeile) {
erg += x;
System.out.println(erg);
}
}
return erg;
}
int summeMitIndex() {
int erg = 0;
for(int zeile=0; zeile<dim2.length; zeile++) {
for(int spalte=0; spalte<dim2[zeile].length ; spalte++) {
erg += dim2[zeile][spalte];
System.out.println(erg);
}
System.out.println("Das dim2.length ist: "+dim2.length);
System.out.println("Das dim2[zeile].length ist: "+dim2[zeile].length);
}
return erg;
}
public static void main(String[] args) {
Arrays objekt = new Arrays();
// objekt.summe();
objekt.summeMitIndex();
}
}
Freu mich auch hilfreiche und ausführliche antworten danke.