Dart Stream / Список - PullRequest
0 голосов
/ 04 мая 2018

Я хочу добавить пользователя в свой список, если еще нет пользователя с таким именем. На самом деле я вообще хочу избежать дубликатов. Поскольку я не нашел что-то вроде myList.distinct (User.name) или чего-то подобного, я сделал это с помощью цикла for for, а если еще:

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

Мне просто интересно, есть ли более умный способ решить эту проблему в дротике, например, с помощью потока. Но я ничего не нашел.

1 Ответ

0 голосов
/ 04 мая 2018

Вы можете использовать Set вместо списка. Набор хранит только уникальные значения.

Для этого, если ваши значения являются экземплярами пользовательских классов (User), ваш класс User должен реализовать operator ==, чтобы Set работал правильно.

Подробнее см. Как набор определяет, что два объекта равны в дротике?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...