Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List Dart流/列表_List_Filter_Stream_Dart - Fatal编程技术网

List Dart流/列表

List Dart流/列表,list,filter,stream,dart,List,Filter,Stream,Dart,如果还没有具有该名称的用户,我想将其添加到我的列表中。实际上,我通常希望避免重复。 因为我没有找到类似myList.distinct(User.name)或类似的东西,所以我使用for-for循环和if-else: myList.add(customUser); for (User user in myList) { if (user.name == customUser.name) myList.remove(user); } 我只是想知道在dart中是否有更聪明的方法来解决这个

如果还没有具有该名称的用户,我想将其添加到我的列表中。实际上,我通常希望避免重复。 因为我没有找到类似myList.distinct(User.name)或类似的东西,所以我使用for-for循环和if-else:

myList.add(customUser);
for (User user in myList) {
  if (user.name == customUser.name)
    myList.remove(user);
}

我只是想知道在dart中是否有更聪明的方法来解决这个问题,例如使用流。但是我什么也没找到。

你可以用
集合来代替列表。集合仅存储唯一的值

为此,如果您的值是自定义类实例(
User
),则您的
User
类需要实现
操作符==
,才能使
集正常工作


有关更多详细信息,请参见您可以使用
集合而不是列表。集合仅存储唯一的值

为此,如果您的值是自定义类实例(
User
),则您的
User
类需要实现
操作符==
,才能使
集正常工作


有关更多详细信息,请参见“==”和“hashCode”。如果有一个,那么总是另一个。@RandalSchwartz你当然是对的。链接的问题应该提供这些信息和更多信息。是的,我在闲聊的日子里就受到了这样的打击。我在1982年和1983年使用了ST80图像“==”和“hashCode”。如果有一个,那么总是另一个。@RandalSchwartz你当然是对的。链接的问题应该提供这些信息和更多信息。是的,我在闲聊的日子里就受到了这样的打击。我在1982年和1983年使用了ST80图像