我怎样才能找到一个列表包含在任何元素中的另一个列表?
how can I find a list contains in any element another list in flutter?
var firstList= [1,2,3,4,5];
var secondList= [3,5];
// compare result : 3,5
// return true
var firstList= [1,2,3,4,5];
var secondList= [6,7,8];
// compare result : null
// return false
如何比较两个列表中的元素?如果两个列表中有匹配的数据,则return为真。如果没有匹配,return false
这应该可以帮助你...
var firstList = [2, 2, 2, 3];
var secondList = [3, 3, 3];
var firstListSet = firstList.toSet();
var secondListSet = secondList.toSet();
print(firstListSet.intersection(secondListSet));
有很多方法可以做到,您可以使用 every()
和 contains()
方法来实现此目的
我会这样做:
if (secondList.every((item) => firstList.contains(item))) {
return true;
} else {
return false;
}
还有一种快速检查真假的方法
var firstList = [2, 2, 2, 3];
var secondList = [3, 3, 3];
check(int value) => firstList.contains(value);
bool res = secondList.any(check); // returns true
下一个解决方案并不完美,但可能对某人有帮助:
void main() {
var list = ["aa", "bb", "cc"];
for (var el in ['abc', 'aaa', 'bb', 'hmbb', 'afg', 'hhcc']) {
bool isContains = list.any((e) => el.contains(e));
if(isContains) {
print(el);
}
}
}
输出:
aaa
bb
hmbb
hhcc
我发现这个有效
bool bTest2 = lstPlayerIDPieceLocationPointID
.any((element) => lstFoundPoints.contains(element));
print('bTest2 any..contains: $bTest2');
始终查找 1 个列表中的任何项目是否也在另一个列表中。我不在乎是什么,我只想知道是否匹配
var firstList= [1,2,3,4,5];
var secondList= [3,5];
// compare result : 3,5
// return true
var firstList= [1,2,3,4,5];
var secondList= [6,7,8];
// compare result : null
// return false
如何比较两个列表中的元素?如果两个列表中有匹配的数据,则return为真。如果没有匹配,return false
这应该可以帮助你...
var firstList = [2, 2, 2, 3];
var secondList = [3, 3, 3];
var firstListSet = firstList.toSet();
var secondListSet = secondList.toSet();
print(firstListSet.intersection(secondListSet));
有很多方法可以做到,您可以使用 every()
和 contains()
方法来实现此目的
我会这样做:
if (secondList.every((item) => firstList.contains(item))) {
return true;
} else {
return false;
}
还有一种快速检查真假的方法
var firstList = [2, 2, 2, 3];
var secondList = [3, 3, 3];
check(int value) => firstList.contains(value);
bool res = secondList.any(check); // returns true
下一个解决方案并不完美,但可能对某人有帮助:
void main() {
var list = ["aa", "bb", "cc"];
for (var el in ['abc', 'aaa', 'bb', 'hmbb', 'afg', 'hhcc']) {
bool isContains = list.any((e) => el.contains(e));
if(isContains) {
print(el);
}
}
}
输出:
aaa
bb
hmbb
hhcc
我发现这个有效
bool bTest2 = lstPlayerIDPieceLocationPointID
.any((element) => lstFoundPoints.contains(element));
print('bTest2 any..contains: $bTest2');
始终查找 1 个列表中的任何项目是否也在另一个列表中。我不在乎是什么,我只想知道是否匹配