indexWhere method
override
The first index in the list that satisfies the provided test.
Searches the list from index start to the end of the list. The first time an object o is encountered so that test(o) is true, the index of o is returned.
var notes = ['do', 're', 'mi', 're'];
notes.indexWhere((note) => note.startsWith('r')); // 1
notes.indexWhere((note) => note.startsWith('r'), 2); // 3 Returns -1 if element is not found.
notes.indexWhere((note) => note.startsWith('k')); // -1 Implementation
int indexWhere(bool test(E element), [int start = 0]) {
if (start < 0) start = 0;
for (int i = start; i < this.length; i++) {
if (test(this[i])) return i;
}
return -1;
}
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dart.dev/stable/2.13.0/dart-collection/ListMixin/indexWhere.html