У меня есть 2 списка с одним и тем же типом объекта.
List A [ foo, bar, moo, woo, pee ]
List B [ bar, woo ]
Я хочу сравнить эти 2 списка и, если имя совпадает, установить для его свойства значение true.
Например,
if(ListA[1].name.equals(ListB[0].name)) { //match name 'bar' and 'bar'
ListA[1].hasSameName = true;
}
что-то в этом роде.
Я могу написать O (N ^ 2) решение.
for(Talent checkedTalent : ListA) {
for(Talent filteredTalent : ListB) {
if( checkedTalent.Id.equals(filteredTalent.Id) ) {
filteredTalent.isSelected = true;
}
}
}
Может ли этобыть сделано более эффективным способом?