Warum soll ich shuffle nutzen, um bei Rückgabewert Collection eine Liste zurückzugeben?

berserkerdq2

Bekanntes Mitglied
Hi, ich habe als Rückgabewert bei einer Methode Collection<String>, ich dachte mir dann ich verwende einfach ArrayList<String> und gebe die ArrayList zurück. Nun habe ich im Internet gesehen, dass jemand meint, bevor man die ArrayList zurück geben soll, bei Rückgabewert Collection, soll man vorher Collections.shuffle(ArrayList), bzw. er hat das mit List gemacht, machen. Warum? Welchen Zweck hat das? Kann man nicht einfach direkt die ArrayList zurück geben?

https://stackoverflow.com/questions/24491067/how-to-return-a-collection

Hier hab ich das gesehen.
 
Zuletzt bearbeitet:
Nun habe ich im Internet gesehen, dass jemand meint, bevor man die ArrayList zurück geben soll, bei Rückgabewert Collection, soll man vorher Collections.shuffle(ArrayList), bzw. er hat das mit List gemacht, machen. Warum? Welchen Zweck hat das? Kann man nicht einfach direkt die ArrayList zurück geben?
shuffle mischt die List durch. Das kannst Du z. B. brauchen, wenn Du eine Liste mit Karten hast, dann willst Du ja vor dem Austeilen mischen -> shuffle. Du könntest damit auch Lottozahlen ziehen usw.
 
Die Frage auf SO ist schlecht gestellt, er möchte eine zuverlässig gemixte/gemischte Liste zurückgeben (hierbei geht's um Spielkarten). Wenn du das nicht brauchst, dann brauchst du auch nicht shuffle aufrufen. Shuffle mischt die komplette Liste durch.

Wenn du genau ein zufälliges Element brauchst => random.
Wenn du ein zufälliges Element brauchst ohen Wiederholungen => zwei Listen.
Wenn du alle Elemente in-situ brauchst => Liste einfach zurückgeben.

Im Zweifel auch mal in die Docu schauen. 😉
 

Neue Themen


Zurück
Oben