Как удалить дубликаты из неупорядоченного объекта Immutable.List()?
Как удалить дубликаты из неупорядоченного объекта Immutable.List()? (без использования toJS() или toArray())
например
Immutable.List.of("green", "blue","green","black", "blue")
Ответы
Ответ 1
Вы можете преобразовать его в Set. Набор - это список с уникальными значениями.
Immutable.List.of("green", "blue","green","black", "blue").toSet()
Если вам это нужно как список, просто переведите его обратно:
Immutable.List.of("green", "blue","green","black", "blue").toSet().toList()
Обновить:
Он имеет более короткую возможность получить уникальные значения:
Immutable.List.of("green", "blue","green","black", "blue").distinct
Ответ 2
Если у вас более сложный тип, вы также можете использовать groupBy для предоставления собственного селектора для сравнения. Следующие будут удалять дубликаты в свойстве .name
:
var distinctColors = duplicateColors.groupBy(x => x.name).map(x => x.first()).toList();