Set: Unterschied zwischen den Versionen
Aus FI-Wiki
Keine Bearbeitungszusammenfassung |
|||
| Zeile 1: | Zeile 1: | ||
Ein '''Set''' ist eine Datenstruktur aus der Java-Collections-API, die eine Sammlung von Elementen ohne doppelte Werte speichert. | Ein '''Set''' ist eine Datenstruktur aus der Java-Collections-API, die eine Sammlung von Elementen ohne doppelte Werte speichert. | ||
Jedes Element kann nur einmal vorkommen. Dadurch eignet sich ein Set ideal, wenn nur eindeutige Werte zugelassen sind. | Jedes Element kann nur einmal vorkommen. Dadurch eignet sich ein Set ideal, wenn nur eindeutige Werte zugelassen sind. | ||
== Eigenschaften == | |||
* speichert nur '''einzigartige''' Elemente | * speichert nur '''einzigartige''' Elemente | ||
* keine Duplikate erlaubt | * keine Duplikate erlaubt | ||
| Zeile 11: | Zeile 9: | ||
* verschiedene Implementierungen: HashSet, TreeSet, LinkedHashSet | * verschiedene Implementierungen: HashSet, TreeSet, LinkedHashSet | ||
== Beispiel: HashSet verwenden == | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
import java.util.HashSet; | import java.util.HashSet; | ||
| Zeile 23: | Zeile 21: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Überprüfen, ob ein Element existiert == | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
if (namen.contains("Max")) { | if (namen.contains("Max")) { | ||
| Zeile 30: | Zeile 28: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Elemente entfernen == | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
namen.remove("Lisa"); | namen.remove("Lisa"); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Iteration über ein Set == | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
for (String name : namen) { | for (String name : namen) { | ||
| Zeile 42: | Zeile 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Implementierungen im Überblick == | |||
* '''HashSet''' – sehr schnell, keine Ordnung | * '''HashSet''' – sehr schnell, keine Ordnung | ||
* '''LinkedHashSet''' – speichert Einfügereihenfolge | * '''LinkedHashSet''' – speichert Einfügereihenfolge | ||
* '''TreeSet''' – sortierte Ausgabe, langsamer | * '''TreeSet''' – sortierte Ausgabe, langsamer | ||
== typische Einsatzgebiete == | |||
* Sammlungen ohne Duplikate | * Sammlungen ohne Duplikate | ||
* Listen eindeutig möglicher Werte | * Listen eindeutig möglicher Werte | ||
| Zeile 53: | Zeile 51: | ||
* schnelle Existenzprüfung | * schnelle Existenzprüfung | ||
== Kurzmerksatz == | |||
'''Ein Set speichert einzigartige Elemente und verhindert automatisch doppelte Einträge, ideal für eindeutige Sammlungen.''' | '''Ein Set speichert einzigartige Elemente und verhindert automatisch doppelte Einträge, ideal für eindeutige Sammlungen.''' | ||
Aktuelle Version vom 12. Januar 2026, 14:13 Uhr
Ein Set ist eine Datenstruktur aus der Java-Collections-API, die eine Sammlung von Elementen ohne doppelte Werte speichert. Jedes Element kann nur einmal vorkommen. Dadurch eignet sich ein Set ideal, wenn nur eindeutige Werte zugelassen sind.
Eigenschaften
- speichert nur einzigartige Elemente
- keine Duplikate erlaubt
- Reihenfolge ist nicht garantiert (bei HashSet)
- sehr schnelle Suche nach vorhandenen Elementen
- verschiedene Implementierungen: HashSet, TreeSet, LinkedHashSet
Beispiel: HashSet verwenden
import java.util.HashSet;
HashSet<String> namen = new HashSet<>();
namen.add("Anna");
namen.add("Max");
namen.add("Lisa");
namen.add("Anna"); // wird ignoriert, da bereits vorhanden
Überprüfen, ob ein Element existiert
if (namen.contains("Max")) {
System.out.println("Max ist im Set vorhanden.");
}
Elemente entfernen
namen.remove("Lisa");
Iteration über ein Set
for (String name : namen) {
System.out.println(name);
}
Implementierungen im Überblick
- HashSet – sehr schnell, keine Ordnung
- LinkedHashSet – speichert Einfügereihenfolge
- TreeSet – sortierte Ausgabe, langsamer
typische Einsatzgebiete
- Sammlungen ohne Duplikate
- Listen eindeutig möglicher Werte
- Mengenoperationen (Schnittmenge, Vereinigung)
- schnelle Existenzprüfung
Kurzmerksatz
Ein Set speichert einzigartige Elemente und verhindert automatisch doppelte Einträge, ideal für eindeutige Sammlungen.
