retainWhere method

  1. @override
void retainWhere(
  1. Test<E> test
)
override

Removes all objects from this list that fail to satisfy test.

An object o satisfies test if test(o) is true.

final numbers = <String>['one', 'two', 'three', 'four'];
numbers.retainWhere((item) => item.length == 3);
print(numbers); // [one, two]

The list must be growable.

Implementation

@override
void retainWhere(Test<E> test) {
  if (!growable) {
    throw UnsupportedError('Cannot remove values from a fixed-length list.');
  }
  return elements.retainWhere(test);
}