Hallo,
eine kurze Grundübersicht: Ich habe ein 2D-Array, das als Spielbrett dient und auf dem Figuren abgesetzt werden. Das hinzufügen der Figuren klappt ohne Probleme. Bei der Ausgabe bekomme ich ein Array voller null-Einträge, bis auf die Positionen auf denen eine Figur steht, da bekomm ich einen Namen ausgegeben. Sobald eine Figur erstellt wird, wird Sie einem Array in der Klasse GameStone von maximal 11 Feldern hinzugefügt (max. 11 Spielfiguren pro Spieler). Nun will ich das Spielbrett durchgehen, und alle Spielfiguren ohne die null-Positionen ausgeben lassen. Hierzu unten die for-Schleife. Leider bekomme ich eine NullPointerException und ich weiß einfach nicht warum... Meine Vermutung ist, dass der Fehler an dem null-Vergleich in der if-Bedingung liegt? Oder da ich das Array ja bereits mit 11 Plätzen initialisiere, und daher auch hier noch null-Einträge sind und die Schleife deshalb crasht??
Klasse MatchField mit folgender getter-Methode
Ausgabe der Figuren
eine kurze Grundübersicht: Ich habe ein 2D-Array, das als Spielbrett dient und auf dem Figuren abgesetzt werden. Das hinzufügen der Figuren klappt ohne Probleme. Bei der Ausgabe bekomme ich ein Array voller null-Einträge, bis auf die Positionen auf denen eine Figur steht, da bekomm ich einen Namen ausgegeben. Sobald eine Figur erstellt wird, wird Sie einem Array in der Klasse GameStone von maximal 11 Feldern hinzugefügt (max. 11 Spielfiguren pro Spieler). Nun will ich das Spielbrett durchgehen, und alle Spielfiguren ohne die null-Positionen ausgeben lassen. Hierzu unten die for-Schleife. Leider bekomme ich eine NullPointerException und ich weiß einfach nicht warum... Meine Vermutung ist, dass der Fehler an dem null-Vergleich in der if-Bedingung liegt? Oder da ich das Array ja bereits mit 11 Plätzen initialisiere, und daher auch hier noch null-Einträge sind und die Schleife deshalb crasht??
Klasse MatchField mit folgender getter-Methode
Java:
public String getField(int x, int y) {
return field[x] [y];
}
Ausgabe der Figuren
Java:
String pos0 = "";
for (int i = 0; i < GameStone.stonesR.length; i++) {
if (field.getField(GameStone.stonesR[i].getX(), GameStone.stonesR[i].getY()) != null) {
pos0 = GameStone.stonesR[i].getName();
Zuletzt bearbeitet: