I have a java.util.Set<City> cities and I need to add cities to this set in 2 ways:
-
By adding individual city (with the help of
cities.add(city)method call) -
By adding another set of cities to this set (with the help of
cities.addAll(anotherCitiesSet)method call)
But the problem in second approach is that i don’t know whether there were any duplicate cities in the anotherCitiesSet.
I want to do some processing whenever a duplicate entry is tried to be entered in thecities set.
Copy the
citiesset (to say,citiesCopy), and then callcitiesCopy.retainAll(anotherCitiesSet)– the resulting set incitiesCopywill contain the intersection of the two sets, thus allowing you to easily see which cities are duplicated, if any.Alternatively, loop through the second set and manually add each of the elements, checking the return value from
add()each time: