我需要按照集合的结果过滤列表。 例如,这有效:
(List(1, 2, 3, 4, 5, 6, 7, 8, 9) filter (_!= 1))
产出清单(2,3,4,5,6,7,8,9) 但是我需要通过两个返回集合的函数来过滤此列表(例如,它返回Set(1,2)),并且当前列表需要通过这些函数进行过滤。
有什么想法可以做到这一点? 我已经尝试过使用&&但它不起作用
提前致谢。
答案 0 :(得分:1)
试试这个,
scala> val raw = Set(1,2)
raw: scala.collection.immutable.Set[Int] = Set(1, 2)
scala> val column = Set(3,4)
column: scala.collection.immutable.Set[Int] = Set(3, 4)
scala> val l = (1 to 9).toList
l: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8, 9)
scala> l.filterNot(x => raw(x) || column(x))
res9: List[Int] = List(5, 6, 7, 8, 9)
根据@ 4e6的评论,
scala> l.filterNot(raw ++ column)
res9: List[Int] = List(5, 6, 7, 8, 9)