如何解决如何避免在List.newBuilder Scala中出现重复项?
如何避免此代码重复:
>>> list_of_new_indexes
array([0,1,4,2,3,0])
结果是val lastUpdatesBuilder = List.newBuilder[(String,Int)]
val somelist = List("a","a")
for (v <- somelist) {
lastUpdatesBuilder += v -> 1
}
println(lastUpdatesBuilder.result())
,我希望它仅是List((a,1))。
解决方法
您在这里:
object Demo extends App {
val lastUpdatesBuilder = Set.newBuilder[(String,Int)]
val somelist = List("a","a")
for (v <- somelist) {
lastUpdatesBuilder += v -> 1
}
println(lastUpdatesBuilder.result())
}
我建议不要使用可变集,您可以执行以下操作。
val ans = somelist.map{ key =>
key -> 1
}.toMap
println(ans)
或者您可以先使用distinct
删除重复项,然后在其中创建地图。
val somelist = List("a","a").distinct
val ans = somelist.map{ key =>
key -> 1
}.toMap
,
这是distinct
方法的作用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。