首页 > 解决方案 > Dart:2 个列表,显示列表 a 中不在列表 b 中的元素

问题描述

我正在尝试比较 2 个列表。(飞镖(颤动))

List a = [1,2,3,4]
List b = [2,3]

我想找到 List a 中不在 List b 中的元素。结果:

List c = [1,4]

我应该使用哪种方法?从学校的数学中,我知道您可以使用交集来查找公共元素,但不知道这种“方法”的名称。

提前致谢!

标签: flutterdart

解决方案


如果您使用集合而不是列表,这会容易得多:Set.difference方法正是这样做的。

或者,如果您希望输出是一个列表(以保持 list 的顺序a),最有效的方法仍然是将 list 中的元素存储b在一个集合中,然后使用 list 上的循环从元素a中构建列表c不在 set 中b,使用Set.contains方法。


推荐阅读