Come rimuovere i duplicati da Immutable.List() non ordinato? (senza utilizzare toJS() o toArray())Come rimuovere i duplicati da un Immutable.List() non ordinato?
ad es.
Immutable.List.of("green", "blue","green","black", "blue")
Come rimuovere i duplicati da Immutable.List() non ordinato? (senza utilizzare toJS() o toArray())Come rimuovere i duplicati da un Immutable.List() non ordinato?
ad es.
Immutable.List.of("green", "blue","green","black", "blue")
È possibile convertirlo in un set. Un set è un elenco con valori unici.
Immutable.List.of("green", "blue","green","black", "blue").toSet()
Se ne avete bisogno, come la lista di nuovo solo riconvertirlo poi:
Immutable.List.of("green", "blue","green","black", "blue").toSet().toList()
Aggiornamento:
esiste una possibilità più breve per ottenere valori unici:
Immutable.List.of("green", "blue","green","black", "blue").distinct
Se si dispone di un tipo più complesso, è anche possibile utilizzare groupBy per fornire il tuo selezionatore da confrontare. Quanto segue rimuoverà i duplicati sulla proprietà .name
:
var distinctColors = duplicateColors.groupBy(x => x.name).map(x => x.first()).toList();
Molto utile, grazie! – slezica
grazie! funziona benissimo! – ThorbenA
Utilizzando Immutable 3.7.3 la soluzione '.distinct' non sembra funzionare (non è definita). '.toSet(). toList()' fa il lavoro! – manosim