15.09.2014 Aufrufe

Schrödinger programmiert Java - Das etwas andere Fachbuch

Schrödinger programmiert Java - Das etwas andere Fachbuch

Schrödinger programmiert Java - Das etwas andere Fachbuch

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Alles muss man selber machen<br />

Lass uns mal schauen, wie eine<br />

Implementierung mit einem Array aussehen<br />

würde:<br />

*1 Da Arrays sich nicht<br />

merken, an welcher Stelle<br />

das nächste Element<br />

eingefügt werden soll, musst<br />

du dir das selber in einer<br />

Variablen merken.<br />

public class SchuhTesterMitArray implements SolcheSchuheHastDuSchonTester {<br />

private SchuhPaar[] schuhe;<br />

private int schuhZaehler = 0; *1<br />

*2 Ein Array der Länge 20 sollte<br />

public SchuhTesterMitArray() {<br />

fürs Erste reichen.<br />

this.schuhe = new SchuhPaar[20]; *2<br />

*3 Nur wenn noch Platz im<br />

}<br />

Array ist, …<br />

@Override<br />

*4 … fügen wir das neue Paar Schuhe an<br />

public void addSchuhPaar(SchuhPaar schuhe) {<br />

die entsprechende Position …<br />

if(this.schuhZaehler < this.schuhe.length) { *3<br />

*5 … und erhöhen den internen<br />

this.schuhe[this.schuhZaehler] = schuhe; *4<br />

Schuhzähler.<br />

this.schuhZaehler++; *5<br />

}<br />

}<br />

*6 Wir müssen jedes<br />

@Override<br />

Paar Schuhe bzw. jede<br />

public boolean hastDuSchon(SchuhPaar neuesSchuhPaar) {<br />

Position in dem Array<br />

boolean hastDuSchon = false;<br />

durchgehen …<br />

for (SchuhPaar schuhPaar : this.schuhe) { *6<br />

if(schuhPaar != null && schuhPaar.equals(neuesSchuhPaar)) { *7<br />

hastDuSchon = true; *8<br />

}<br />

*7 … und prüfen, ob die Schuhpaare gleich sind.<br />

}<br />

Außerdem solltest du prüfen, ob überhaupt<br />

return hastDuSchon;<br />

ein Paar Schuhe an der Position im Array vorhanden ist,<br />

}<br />

denn Position x könnte auch unbelegt sein,<br />

das heißt null.<br />

}<br />

*8 Bei Gleichheit ist das<br />

Ergebnis true.<br />

Noch schnell toString() für SchuhPaar implementieren, damit<br />

wir gleich auch was Sinnvolles auf der Konsole sehen ...<br />

@Override<br />

public String toString() {<br />

return this.getGroesse() + " " + this.getFarbe() + (this.isMitStoeckeln()<br />

? " mit Stöckeln" : " ohne Stöckel");<br />

}<br />

312 Kapitel ACHT

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!