Példa

List list = new ArrayList();
...

if (!list.contains(someObject)) {
...
list.add(someObject);
...
}

Megoldás
A megadott példában a lista "contains" metódusa lineáris keresést fog végezni, ami nagy lista esetén erőforrás-igényes lehet. Ha set metódusra módosítja, akkor a contains meghívására nem lesz szükség, mivel a set egyediséget garantál. Javasolt módosítás:


Set set = new HashSet();
...
set.add(someObject);
...


A beszúrás miatt fontos a LinkHashSet használat a HashSet helyett. Javasolt módosítás:


Set set = new LinkedHashSet();
...
set.add(someObject);
...