过滤元组列表有什么好方法(读更好的可读性)。我正在使用
tupleList.filter(_._2).map(_._1)
但这并不可读。
答案 0 :(得分:2)
不确定有多好,但你可以使用collect:
tupleList.collect { case (true, x) => x }
当然给x一些有意义的名字。如果第一个元素不是布尔值,您甚至可以执行以下操作:
tupleList.collect { case (x, y) if (cond) => y}
并给出x和y有意义的名称
答案 1 :(得分:0)
使用具有部分功能的等效功能也可以提供帮助:
tupleList.filter { case (_, snd) => snd }
.map { case (fst, _) => fst }
当Dotty以元组解包方式到达时,这应该会显着改善。