retainWhere 方法
- bool test(
- E element
override
移除所有不满足 test
的此集合的元素。
final characters = <String>{'A', 'B', 'C'};
characters.retainWhere(
(element) => element.startsWith('B') || element.startsWith('C'));
print(characters); // {B, C}
实现
void retainWhere(bool test(E element)) {
List<Object?> toRemove = [];
for (E element in this) {
if (!test(element)) toRemove.add(element);
}
removeAll(toRemove);
}