【发布时间】:2021-04-19 07:00:46
【问题描述】:
val list1 : List[String] = List(....)
val list2 : List[String] = List(....)
val filtered = list1.filter(list2.toSet.contains)
当使用上面的代码时,toSet 是否会为 list1 中的每个项目调用(在这种情况下我应该添加另一个 val set2 = list2.toSet,或者 Scala 编译器是否对此进行了优化,在这种情况下上面的代码只会运行toSet 一次?
【问题讨论】:
标签: list scala performance