Iteratoren oder Listen für Rückgabewerte in Java

Der Unterschied besteht darin, dass in einigen Fällen die Wahl eher auf iterator als die besser geeignete Methode fällt: Iteratoren können zurückgegeben und verändert werden, bevor die gespeicherten Daten vollständig verfügbar sind. Listen bzw. Arrays hingegen müssen erst vollständig bestückt sein, bevor man ihren Rückgabewert zuverlässig erhält.

Stellen Sie sich einen Fall vor, wo Sie einen Strom von Objekten aus einer Quelle beziehen, die jedes Objekt mit einer gewissen Zeitverzögerung erstellt. Diese Situation kommt recht häufig vor bei Software, die Ein- und Ausgaben in einem Netzwerk verwendet, oder auch bei umfangreichen Abfrage-Ergebnissen aus Datenbanken. Wenn Sie nach einer Methode suchen, die eine Reihe von Objekten liefert, welche die Ergebnisse dieser langsamen Datenquelle repräsentieren, bietet sich sowohl eine Liste als auch ein Iterator an. Versuchen wie es zuerst mit einer Liste.

Eine Liste verwenden

In Listing A sehen Sie, dass die getUsers-Methode das vollständige Ergebnis zwischenspeichert, bevor sie die Liste zurückgibt. Dies erfordert unter Umständen nicht nur sehr viel Speicherplatz, sondern kann auch zu unnötigen Verzögerungen führen. Wenn der Aufrufer der getUsers-Methode die zurückgegebenen Objekte jeweils einzeln bearbeiten will – ausdrucken zum Beispiel -, ist die Erstellung einer Collection überflüssig.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Umfrage: Angestellte in Deutschland unterschätzen NIS-2-Richtlinie

Fast zwei Drittel halten jedoch eine Umsetzung aller Vorgaben von NIS 2 bis Jahresende für…

8 Stunden ago

Kostenloser Dekryptor für ShrinkLocker

Mit dem Dekryptor von Bitdefender können Opfer von Attacken mit der Shrinklocker-Ransomware Dateien wiederherstellen.

22 Stunden ago

Malwarebytes warnt vor Betrugsmaschen beim Weihnachtseinkauf

In der Vorweihnachtszeit ist vor allem Malvertising auf dem Vormarsch. Cyberkriminelle locken Nutzer über schädliche…

22 Stunden ago

Bedrohungsindex: Deutliche Zunahme von Infostealern im Oktober

Dazu trägt unter der Infostealer Lumma-Stealer bei. Hierzulande dominiert der Infostealer Formbook die Malware-Landschaft.

2 Tagen ago

Chrome 131 schließt zwölf Sicherheitslücken

Eine schwerwiegende Anfälligkeit hebelt die Sicherheitsfunktion Seitenisolierung auf. Betroffen sind Chrome für Windows, macOS und…

2 Tagen ago

DeepL Voice mit KI für Sprach- übersetzungen

DeepL Voice ermöglicht Live‑Übersetzung von Meetings und Gesprächen in 13 Sprachen.

2 Tagen ago