Schrödinger programmiert Java - Das etwas andere Fachbuch
Schrödinger programmiert Java - Das etwas andere Fachbuch
Schrödinger programmiert Java - Das etwas andere Fachbuch
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Viл fachр s mit ys!<br />
N s ch: Mein Compiler meckert, dass der SchuhTesterMitArray<br />
die Methode getSchuhKollektion() nicht implementiert. Die Methode hatte ich<br />
ja eben im Interface hinzufügen müssen. Arrays sind ja keine Collections,<br />
wie soll ich das д jzt machн?<br />
Nichts leichter als das, denn zum Glück kannst du über die Helferklasse Arrays<br />
ein Array direkt in eine Liste umwandeln. Und Listen sind Collections.<br />
@Override<br />
public Collection getSchuhKollektion() {<br />
return Arrays.asList(this.schuhe);*1<br />
}<br />
Aber wieder zurück zu unserer neuen Implementierung:<br />
*1 Die Helfermethode<br />
Arrays.toList() wandelt<br />
ein Array in eine Liste um.<br />
Praktisch, oder?<br />
In der Main-Klasse kannst du einfach die Array-basierte Schuhtester-Implementierung gegen<br />
die auf Collections basierende austauschen.<br />
SolcheSchuheHastDuSchonTester tester = new SchuhTesterMitCollection<br />
(new ArrayList());<br />
Јtzt weiß ich нdch,<br />
s р mit дm Schuhтstр-Infa<br />
гbt t!<br />
Probier auch gleich mal die neue Methode aus:<br />
System.out.println(tester.getSchuhKollektion().size());<br />
Liф 4 zück! <strong>Das</strong> bedeutet ja, dass ich<br />
mit der size()-Methode auch die richtige Anzahl der Elemente im<br />
Array … äh, ich meine natürlich in der Collection … herausbekomme<br />
und nicht bloß, wie viele Plätze insgesamt zur Verfügung<br />
stehen. Gefällt mir ja jetzt schon besser als das Arbeiten<br />
mit rohen Arrays. Wum gibt’s e н Din<br />
eitch?<br />
Na ja, so dumm sind die Arrays auch wieder nicht. Du solltest immer abwägen, ob für das,<br />
was du gerade programmieren möchtest, Arrays nicht vielleicht sogar die bessere Wahl sind.<br />
Wenn du zum Beispiel sehr viel mit primitiven Datentypen arbeitest, sind Arrays performanter, denn<br />
Collections funktionieren nur mit den Wrapperklassen. Die wiederum belegen mehr Speicher.<br />
320 Kapitel ACHT