如何删除我的列表变量中的空值?

时间:2018-06-30 03:42:07

标签: scala list null

我有以下列表输入:

List(List(first, sec, null, null), List(third, null, null))

我需要从列表中删除null s ,以便获得:

List(List(first, sec), List(third))

2 个答案:

答案 0 :(得分:4)

如果您的嵌套列表

val data = List(List("first", "sec", null, null), List("third", null, null))

然后将mapfilterNot用作

data.map(_.filterNot(_ == null))
//res0: List[List[String]] = List(List(first, sec), List(third))

或者您可以将mapfilter用作

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"))