Java Labyrinth

forsti222

Mitglied
Hey, ich bin gerade beim erstellen eines Labyrinths und komme leider gerade auf einen komischen Fehler
Ich erstelle erstmal ein labyrinth mit Rändern, wobei aber der Rechte Rand nicht dort hin will wo er soll *gg*
Vl kann mir da jemand helfen:
Ausgabe ist so:
X X X X X X X X X X
X X
X X
X X
X X
X X
X X
X X
X X
X X X X X X X X X X
Java:
public char[][] createLabyrinth() {
		char[][] labyrinth = new char[labsize][labsize];
		for (int i = 0; i < labsize; i++) {
			labyrinth[0][i] = 'X';
			labyrinth[i][0] = 'X';
			labyrinth[labsize-1][i] = 'X';
			labyrinth[i][labsize-1] = 'X';
		}
		return labyrinth;
	}
public void showlabyrinth(char[][] a) {

		for (int i = 0; i < a.length; i++) {
			for (int j = 0; j < a.length; j++) {
				System.out.print(a[i][j]+" ");
			}
			System.out.println();

		}
	}
 

wakoz

Erfahrenes Mitglied
Ich vermute Ausgabe Problem.
Dein Array ist nicht voll besetzt und bei der Ausgabe werden Wite Spaces nicht mit ausgegeben. (Meine Vermutung)

Wenn dein Array komplett befüllt ist und nicht wie jetzt halb leer dann sollten die X Zeichen dort sein wo du sie hin haben willst.

die Array Felder die Leer sein sollen... schreib da mal ein anders Zeichen rein und schau was passiert.
 

Franz Degenhardt

Erfahrenes Mitglied
Hi,

das liegt vermutlich daran, dass du das char-Array nur für die 'X' initialisierst. Der Rest des Arrays ist auf dem default Wert für primitive Typen - in diesem Fall '\u0000', Nullchar.
Ich würde den Rest des Arrays mit Leerzeichen initialisieren.
 

Neue Beiträge