duplicates property

Iterable<T> get duplicates

Returns a new iterable containing only the duplicate elements from this iterable.

Example usage:

void main() {
  List<int> duplicates = [1, 2, 2, 3, 3, 3];
  List<int> duplicateNumbers = duplicates.duplicates.toList();
  print(duplicateNumbers); // Output: [2, 3]
}

Implementation

Iterable<T> get duplicates sync* {
  final seenElements = <T>{};

  for (final element in this) {
    if (!seenElements.add(element)) {
      yield element;
    }
  }
}