In der Programmiersprache Java , ist eine Kollektion eine Schnittstelle für die Speicherung und Manipulation einer Sammlung von Daten . Ein Set ist eine Unterart der Sammlung , die die gleichen Prinzipien folgt , außer es keine doppelten Elemente enthält . Wenn Sie den Unterschied zwischen den Elementen in zwei verschiedene Sätze bestimmen müssen, bietet Java -Operationen , dies zu tun . Legt
Anders als bei anderen Sammlungen , wenn Sie Java , um ein Duplikat Artikel einem Set hinzufügen zu erzählen, wird die Bestellung keine Wirkung. Ein HashSet speichert die gesammelten Elemente in einer Struktur als Hash-Tabelle bekannt. Hash -Tabellen speichern Daten effizient , aber nicht in einem bestimmten Muster. Ein TreeSet speichert Daten in aufsteigender Reihenfolge sortiert . TreeSets nicht speichern kann beliebige Elemente , da jedes Element muss sortiert und verglichen werden , um es in die richtige Position zu platzieren.
Massenvorgänge
Um die Unterschiede oder Ähnlichkeiten zwischen den Sätzen zu identifizieren , verwenden Java Bulk-Operationen für den Umgang mit mehreren Elementen . Zum Beispiel die Operation " s1.containsAll (s2) " in Java sagt Ihnen, ob Zwei Set ist eine Teilmenge von Set One , dh jedes Element in Two Set ist auch in One Set enthalten . Verwenden Sie andere Java-Vorgänge zu ersetzen Set One mit einer Vereinigung der gesamten Elemente in beiden Sätzen , eine Kreuzung , die Elemente , die in beiden Sätzen , oder in die "set Unterschied", eine Reihe von Elementen in One Set aber nicht im Set gefunden . Two
Zerstörungsfreie Unterschiede
Berechnung der Soll-Differenz - oder die Gewerkschaft oder Kreuzung - von zwei Sätzen zerstört eins gesetzt. Um Differenz ohne eine der beiden Set bestimmen , erstellen Sie ein Duplikat des ersten Set One . Wenn Sie das Duplikat und Set Two , um den Unterschied festzustellen, verwenden , wird der Vorgang zerstören die doppelte aber Set One bleiben . Java wird die Ergebnisse der eingestellten Unterschiede in HashSet , wenn Sie andere Methoden ersetzen können . Oracle bietet Anleitungen für die Arbeit mit zwei Sätzen in seiner Online- Java Tutorial download.oracle.com /javase /Tutorial /collections /interfaces /set.html .
Überlegungen
Wenn Sie wissen , welche Elemente in einer Sammlung einzigartig sind und welche davon haben Duplikate wollen , schließt Oracle Tutorial eine Probe für brechen sie in Sätze : ein Satz identifiziert jedes Element, das mehr als einmal angezeigt wird, während der zweite Satz schließt jede einzigartiges Element . Sie können auch Java auf symmetrischen Satz Unterschiede zu identifizieren , die Erstellung einer Liste von Elementen , die entweder in Set One Set oder zwei, aber nicht in beiden .