Lernpfad:Lerntheke Marsrover/30
Der Rover ist auch künstlerisch begabt. Er möchte mit seinen Marken gerne einige Bilder malen. Dazu bekommt er einen Text mit Bildinformationen zum Beispiel wird dieses Bild
in folgender Form codiert:
...x.....x... ....x...x.... ...xxxxxxx... ..xx.xxx.xx.. .xxxxxxxxxxx. .x.xxxxxxx.x. .x.x.....x.x. ....xx.xx....
Die Eingabe der Bilddaten erfolgt dabei als String-Parameter in einer Methode. Dazu werden Zeilenumbrüche mit dem Sonderzeichen \n
maskiert. Aus dem Bild oben wird dann:
"...x.....x...\n....x...x....\n...xxxxxxx...\n..xx.xxx.xx..\n.xxxxxxxxxxx.\n.x.xxxxxxx.x.\n.x.x.....x.x.\n....xx.xx...."
Programmiere eine Methode maleMarkenbild( String pBilddaten )
, die einen Text als Parameter erhält und aus diesem ein Bild aus Marken in die Welt "malt".
Um den Text mit den Bilddaten zu verarbeiten, helfen dir die String-Methoden von Java. Vor allem diese:
.charAt(pos) |
Ermittelt das Zeichen an der Stelle pos im Text. Es wird bei 0 angefangen zu zählen. |
"Hallo".charAt(0); // ergibt 'H' "hallo".charAt(2); // ergibt 'l'
|
.split(str) |
Zerteilt den Text bei jedem Vorkommen des Textes str . Um den Text in einzelne Zeilen zu zerlegen kann der Teiler "\n" benutzt werden. |
"Hallo Welt".split(" "); // ergibt 'Hallo' und "Welt"
|
Du kannst den Text mit split
in einzelne Teile aufteilen und jeden Teil einzeln bearbeiten, indem Du eine besondere Form einer Schleife benutzt:
for( String zeile: pBilddaten.split("\n") ) { // Tue etwas mit zeile, z.B. zeile.charAt(0); }
Das ist Greenfoot | Der Mars-Rover | Die Welt des Mars-Rover | Das ist Java | Die Rover-Arena | Greenfoot benutzen | Java Syntax | Variablen | Methoden | Bedingte Anweisungen | Schleifen | Objekte | Arrays | Die Fähigkeiten des Rovers | Steine analysieren I | Steine analysieren II | Strukturiertes programmieren | Programme strukturieren I | Programme strukturieren II | Fallunterscheidungen I | Anfragen | Fallunterscheidungen II | Variablen | Objektvariablen | Wiederholungen I | Wiederholungen II | Rover-Liebe | Steine analysieren III | Gefangen im Labyrinth I | Marken-Maler | Fleißige Rover | Gefangen im Labyrinth II | In der Rover-Arena | Parameter