@Override public Iterable<?> duplicatesFrom(Iterable<?> iterable) { if (isNullOrEmpty(iterable)) return EMPTY_SET; Set<Object> duplicates = newSetUsingComparisonStrategy(); Set<Object> noDuplicates = newSetUsingComparisonStrategy(); for (Object element : iterable) { if (noDuplicates.contains(element)) { duplicates.add(element); } else { noDuplicates.add(element); } } return duplicates; }
@Override public Iterable<?> duplicatesFrom(Iterable<?> iterable) { if (isNullOrEmpty(iterable)) return EMPTY_SET; Set<Object> duplicates = newSetUsingComparisonStrategy(); Set<Object> noDuplicates = newSetUsingComparisonStrategy(); for (Object element : iterable) { if (noDuplicates.contains(element)) { duplicates.add(element); } else { noDuplicates.add(element); } } return duplicates; }
@Override public Iterable<?> duplicatesFrom(Iterable<?> iterable) { if (isNullOrEmpty(iterable)) return EMPTY_SET; Set<Object> duplicates = newSetUsingComparisonStrategy(); Set<Object> noDuplicates = newSetUsingComparisonStrategy(); for (Object element : iterable) { if (noDuplicates.contains(element)) { duplicates.add(element); } else { noDuplicates.add(element); } } return duplicates; }