Hallo Java Genies, :lol:
Könnte mir vllt. jemand eine Kurzerklärung zu diesem bisshen Quelltext aus der Model von einem Tic Tac Toe spiel erklären ?
Ich verstehe schon dass die Methode checkBoard() überprüfen soll ob 3 mal X oder O in einer Reihe sind. Jedoch verstehe ich nicht was in den ganzen For-Schleifen passiert/ausgerechnet wird. :bahnhof: Ich hoffe mir kann jemand weiterhelfen. Bedanke mich schon mal im vorraus.
Mit Freundlichen Grüßen
xHarDRegs:rtfm:
Quelltext:
public boolean checkBoard() {
int sumDiagonalLR = 0;
int sumDiagonalRL = 0;
int sumSpalten = 0;
int sumReihen= 0;
for (int i = 0; i <= 2; i++) {
sumDiagonalLR += brett;
}
for (int i = 0; i <= 2; i++) {
sumDiagonalRL += brett[2 - i];
}
if (Math.abs(sumDiagonalLR) == 3 || Math.abs(sumDiagonalRL) == 3) {
return true;
}
for (int i = 0; i <= 2; i++) {
for (int j = 0; j <= 2; j++) {
sumSpalten += brett[j];
sumReihen += brett[j];
}
if (Math.abs(sumSpalten) == 3 || Math.abs(sumReihen) == 3) {
return true;
} else {
sumSpalten = 0;
sumReihen = 0;
}
}
return false;
}
Könnte mir vllt. jemand eine Kurzerklärung zu diesem bisshen Quelltext aus der Model von einem Tic Tac Toe spiel erklären ?
Ich verstehe schon dass die Methode checkBoard() überprüfen soll ob 3 mal X oder O in einer Reihe sind. Jedoch verstehe ich nicht was in den ganzen For-Schleifen passiert/ausgerechnet wird. :bahnhof: Ich hoffe mir kann jemand weiterhelfen. Bedanke mich schon mal im vorraus.
Mit Freundlichen Grüßen
xHarDRegs:rtfm:
Quelltext:
public boolean checkBoard() {
int sumDiagonalLR = 0;
int sumDiagonalRL = 0;
int sumSpalten = 0;
int sumReihen= 0;
for (int i = 0; i <= 2; i++) {
sumDiagonalLR += brett;
}
for (int i = 0; i <= 2; i++) {
sumDiagonalRL += brett[2 - i];
}
if (Math.abs(sumDiagonalLR) == 3 || Math.abs(sumDiagonalRL) == 3) {
return true;
}
for (int i = 0; i <= 2; i++) {
for (int j = 0; j <= 2; j++) {
sumSpalten += brett[j];
sumReihen += brett[j];
}
if (Math.abs(sumSpalten) == 3 || Math.abs(sumReihen) == 3) {
return true;
} else {
sumSpalten = 0;
sumReihen = 0;
}
}
return false;
}