有什么方法可以在不使用 dart 循环的情况下在两个列表之间找到唯一值

Blo*_*oss 5 dart flutter

有没有办法在不使用循环的情况下在两个列表之间找到唯一值?

List<String> first = ['A','B','C','D']; 
List<String> second = ['B','D']; 
Run Code Online (Sandbox Code Playgroud)

我需要的结果是这样的:

result = ['A','C'];
Run Code Online (Sandbox Code Playgroud)

Bla*_*nka 6

您可以使用where()contains()从方法List

void main() {
  List<String> first = ['A','B','C','D']; 
  List<String> second = ['B','D'];

  List<String> result = first.where((item) => !second.contains(item)).toList();
  print(result); // [A, C]
}
Run Code Online (Sandbox Code Playgroud)

DartPad 中编辑。