我有一个包含元组 (char, Int) 的列表列表
val raw = List(List((a,0), (b,0)), List((a,1), (b,0)), List((a,2), (b,0)), List((a,0), (b,1)), List((a,1), (b,1)), List((a,2), (b,1)), List((a,0), (b,2)), List((a,1), (b,2)), List((a,2), (b,2)))`
我想过滤掉所有Int为0的元组,所以结果应该是:
List(List(), List((a,1)), List((a,2)), List((b,1)), List((a,1), (b,1)), List((a,2), (b,1)), List((b,2)), List((a,1), (b,2)), List((a,2), (b,2)))
我尝试先做一个映射,然后做一个过滤器,但编译器提示 不兼容的类型:((Int, Char) => Boolean expected but found ((Int, Char) => Unit)
raw.map(_.filter(tuple => match {
(_,0) => false
(_,_) => true
})
我错了吗
最佳答案
这是正确的:
raw.map(_.filter(_._2 != 0))
关于list - scala 过滤元组列表的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38336303/