首页 > 解决方案 > 如何比较 2 个列表并将差异也作为列表返回?

问题描述

我是 Dart 的初学者。我有 2 个清单。

List<String> a = ['John','Ella','Kattie'];
List<String> b = ['Ella'];

是否有任何方法可以返回给我一个

List<String> c = ['John','Kattie'];

?

我检查了文档,但找不到任何东西,也许我没有太注意。我试图对此进行硬编码

 for(String i in a)
    {
      for(String j in b) {
         if(i != j) {
            c.add(i);
         }
       }
    }

但我相信还有另一种方法可以做到这一点!

你能帮我吗?先感谢您!

标签: dart

解决方案


如果您不介意使用(我认为您不会在这种特定情况下使用),那么有一个来自类Set的内置方法,它恰好给出了两组的差异。Setdifference

final a = <String>{'John','Ella','Kattie'};
final b = <String>{'Ella'};

main(){
  print(a.difference(b));
}

推荐阅读