我有以下列表输入:
List(List(first, sec, null, null), List(third, null, null))
我需要从列表中删除null
s ,以便获得:
List(List(first, sec), List(third))
答案 0 :(得分:4)
如果您的嵌套列表为
val data = List(List("first", "sec", null, null), List("third", null, null))
然后将map
和filterNot
用作
data.map(_.filterNot(_ == null))
//res0: List[List[String]] = List(List(first, sec), List(third))
或者您可以将map
和filter
用作
data.map(_.filter(_ != null))
//res0: List[List[String]] = List(List(first, sec), List(third))
我希望答案会有所帮助
答案 1 :(得分:4)
给出此列表:
val list = List(List("first", "sec", null, null), List("third", null, null))
Option(null)
给出None
的事实,然后:
list.map(_.flatMap(Option(_)))
产生:
List(List("first", "sec"), List("third"))