Wie schneiden Sie mehrere Sätze?

Habe ich diese Liste:

private List<Set<Address>> scanList;

Also meine Liste enthält mehrere scans, wie Sie sehen können.
Nach jedem scan füge ich neue in der Liste.

Nachdem alle scans fertig sind, möchte ich nur die Adressen, die auftreten, in jedem Satz und legen Sie es in:

private List<Address> addresses;

Macht soetwas schon existiert, im Set/TreeSet/HashSet?

EDIT: nach Antworten, retainAll() ist die richtige Methode. Danke.
Hier ist die Quelle:

Set<Address> addressCross = scanList.get(0);
for (int i = 1; i < scanList.size(); i++) {
    addressCross.retainAll(scanList.get(i));
}   
for (Address address : addressCross) {
    addresses.add(address);
}

InformationsquelleAutor der Frage vale4674 | 2010-10-24

Schreibe einen Kommentar