Hallo,
ich habe ein kleines Verständnisproblem. Ich habe eine Methode die prüfen soll, ob sich bei einem zweidimensionalen Array mit 3 Zeilen und 3 Spalten
in einer Zeile drei gleiche Werte befinden.
Das Array ist so befüllt:
int[][] spielfeld = {{2, 1, 1}, {1, 1, 1}, {5, 6, 1}};
Wenn ich jetzt unten die Methode ausführe und mir auf der Konsole die Elemente zusammen mit dem String "true" ausgeben lasse, dann erscheint
2, 1, 1, true, 1, 1, 1, 5, 6, 1.
Erwartet hätte ich jedoch, dass "true" erst nach 1, 1, 1 erscheint und nicht bereits davor. Nach meinem Verständnis muss die innere Schleife ja im
zweiten durchlauf der äußeren Schleife erst dreimal durchlaufen werden bevor das Programm überhaupt weiß, dass es "true" ausgeben soll und die Bedingung dafür erreicht worden ist?!
Ich wäre für Hilfe wirklich dankbar.
public static boolean testmethode(int[][] spielfeld) {
int temp = 0; //Hilfsvariable
for (int i = 0; i < spielfeld.length; i++) {
if (spielfeld[0] == spielfeld[1] && spielfeld[1] == spielfeld[2]) {
temp = 1;
System.out.println("true");
}
for (int j = 0; j < spielfeld.length; j++) {
System.out.println(spielfeld[j]);
}
}
if (temp == 1) {
return true;
}
else {
return false;
}
}
ich habe ein kleines Verständnisproblem. Ich habe eine Methode die prüfen soll, ob sich bei einem zweidimensionalen Array mit 3 Zeilen und 3 Spalten
in einer Zeile drei gleiche Werte befinden.
Das Array ist so befüllt:
int[][] spielfeld = {{2, 1, 1}, {1, 1, 1}, {5, 6, 1}};
Wenn ich jetzt unten die Methode ausführe und mir auf der Konsole die Elemente zusammen mit dem String "true" ausgeben lasse, dann erscheint
2, 1, 1, true, 1, 1, 1, 5, 6, 1.
Erwartet hätte ich jedoch, dass "true" erst nach 1, 1, 1 erscheint und nicht bereits davor. Nach meinem Verständnis muss die innere Schleife ja im
zweiten durchlauf der äußeren Schleife erst dreimal durchlaufen werden bevor das Programm überhaupt weiß, dass es "true" ausgeben soll und die Bedingung dafür erreicht worden ist?!
Ich wäre für Hilfe wirklich dankbar.
public static boolean testmethode(int[][] spielfeld) {
int temp = 0; //Hilfsvariable
for (int i = 0; i < spielfeld.length; i++) {
if (spielfeld[0] == spielfeld[1] && spielfeld[1] == spielfeld[2]) {
temp = 1;
System.out.println("true");
}
for (int j = 0; j < spielfeld.length; j++) {
System.out.println(spielfeld[j]);
}
}
if (temp == 1) {
return true;
}
else {
return false;
}
}