gpt4 book ai didi

scala - 从一个列表中提取不在另一个列表中的元素

转载 作者:行者123 更新时间:2023-12-03 18:07:35 24 4
gpt4 key购买 nike

简单地说,我有两个列表,我需要提取添加到其中一个的新元素。
我有以下

val x = List(1,2,3)
val y = List(1,2,4)

val existing :List[Int]= x.map(xInstance => {
if (!y.exists(yInstance =>
yInstance == xInstance))
xInstance
})

Result :existing: List[AnyVal] = List((), (), 3)

我需要以最低成本删除除数字之外的所有其他元素。

最佳答案

选择一个合适的数据结构,生活就会变得轻松很多。

scala> x.toSet -- y
res1: scala.collection.immutable.Set[Int] = Set(3)

还要注意:
if (condition) expr1

是简写:
if (condition) expr1 else ()

使用此结果,通常具有静态类型 AnyAnyVal几乎总是一个错误。它只适用于副作用:
if (condition) buffer += 1
if (condition) sys.error("boom!")

关于scala - 从一个列表中提取不在另一个列表中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9559428/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com