zweidimensionales Array

Diskutiere zweidimensionales Array im Java Basics - Anfänger-Themen Bereich.
J

J0sh

Ich komme bei einer Übungsaufgabe nicht mehr weiter...

Hier habe ich ein charArray

char [][] sokoban = new char[7][];
sokoban[0] = "#######".toCharArray();
sokoban[1] = "# . . . . . #".toCharArray();
sokoban[2] = "# . . $ . . #".toCharArray();
sokoban[3] = "# [email protected]$. #".toCharArray();
sokoban[4] = "# . . $ . . #".toCharArray();
sokoban[5] = "# . . . . . #".toCharArray();
sokoban[6] = "#######".toCharArray();

Nun soll ich eine Methode findPlayer schreiben, um nach dem '@' im Array zu suchen.
Diese methode soll ein zweidimensionales Array erhalten und ein Pair<Integer,Integer> zurückgeben.
Und nun muss ich zwei geschachtelte For-Schleifen benutzen um das @ zu suchen.


So sieht nun mein Ansatz aus, aber ich denke er führt nicht in die richtige Richtung...

public static Pair<Integer, Integer> findPlayer(char[][] sokobanChar) {


int x;
int y;
Pair<Integer, Integer> position = new Pair<Integer, Integer>(x, y);


for(int i=0; i<sokobanChar.length;i++) {
x = sokobanChar.toString().indexOf('@');
for(int j=0; j<sokobanChar.length;j++) {
y = sokobanChar.toString().indexOf('@');



}

}
return position ;
}
 
Kirby_Sike

Kirby_Sike

Dein Pair solltest du erst Instanzieren, wenn du die Werte gefunden hast ;)

Die Idee ist mit zwei geschachtelten Schleifen durch dein 2D Array zu iterieren und wenn du die Stelle gefunden hast, packst du die Werte in das Pair und brichst ab ;)


Java:
public static Pair<Integer, Integer> findPlayer(char[][] sokobanChar) {
     for(int i=0; i<sokobanChar.length;i++) {
         for(int j=0; j<sokobanChar[i].length;j++) {
             if(sokobanChar[i][j] == '@'){
                 return new Pair<Integer,Integer>(i,j);
             }
         }
      }
      return null;
}
 
Zuletzt bearbeitet:
Thema: 

zweidimensionales Array

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben