I want to search index where fb3
is.
I have two options indexA
and indexB
like so.
Is there any performance differences like A is faster than B or vice versa?
Is there any better way to search fb3
?
class Foo {
String id; //unique
int number;
Foo(this.id, this.number);
}
class Bar {
String id; //unique
int number;
Bar(this.id, this.number);
}
class FooBar {
Foo foo;
Bar bar;
FooBar(this.foo, this.bar);
}
void main() {
final Foo f = Foo('First Id', 18);
final Bar b = Bar('Second Id', 81);
final FooBar fb = FooBar(f, b);
final Foo f2 = Foo('Third Id', 900);
final Bar b2 = Bar('Fourth Id', 009);
final FooBar fb2 = FooBar(f2, b2);
final Foo f3 = Foo('Fifth Id', 789);
final Bar b3 = Bar('Sixth Id', 987);
final FooBar fb3 = FooBar(f3, b3);
final Foo f4 = Foo('Seventh Id', 222);
final Bar b4 = Bar('Eighth Id', 666);
final FooBar fb4 = FooBar(f4, b4);
final List<FooBar> fbs = [fb, fb2, fb3, fb4];
final int indexA = fbs.indexWhere((FooBar fb) => fb.foo.id == fb3.foo.id && fb.bar.id == fb3.bar.id);
final int indexB = fbs.indexWhere((FooBar fb) => fb == fb3);
}