Ich habe eine Map<String,String>
mit einer großen Anzahl von Schlüsselpaaren. Jetzt möchte ich ausgewählte Schlüssel aus diesem Map
entfernen. Der folgende Code zeigt, was ich getan habe, um das zu erreichen.Entfernen Sie mehrere Schlüssel aus Map auf effiziente Weise?
Set keySet = new HashSet(); //I added keys to keySet which I want to remove.
Dann:
Iterator entriesIterator = keySet.iterator();
while (entriesIterator.hasNext()) {
map.remove(entriesIterator.next().toString());
}
Dies funktioniert. Ich möchte nur wissen, was wäre ein besserer Weg, um meine Anforderung zu erfüllen?
Ihr Vorschlag ist großartig. Ich denke removeAll (keySet) macht, was ich dort gemacht habe –
in Bezug auf "Effizienz" ist es wahrscheinlich nur eine for-Schleife darunter, aber in Bezug auf sauberer Code, nice win :) – rogerdpack
Thaks, ich verwendet retainAll seine coole auch – shareef