如何从无序的Immutable.List()中删除重复项?(不使用toJS()或toArray())
例如
Immutable.List.of("green", "blue","green","black", "blue")
Run Code Online (Sandbox Code Playgroud)
Var*_*ron 36
您可以将其转换为Set.集合是具有唯一值的列表.
Immutable.List.of("green", "blue","green","black", "blue").toSet()
Run Code Online (Sandbox Code Playgroud)
如果您再次需要它作为列表,只需将其转换回:
Immutable.List.of("green", "blue","green","black", "blue").toSet().toList()
Run Code Online (Sandbox Code Playgroud)
更新:
获得唯一值的可能性较小:
Immutable.List.of("green", "blue","green","black", "blue").distinct
Run Code Online (Sandbox Code Playgroud)
小智 26
如果你有一个更复杂的类型,你也可以使用groupBy提供自己的选择器进行比较.以下内容将删除该属性上的重复项.name
:
var distinctColors = duplicateColors.groupBy(x => x.name).map(x => x.first()).toList();
Run Code Online (Sandbox Code Playgroud)