代码之家  ›  专栏  ›  技术社区  ›  Rjj

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

  •  1
  • Rjj  · 技术社区  · 7 年前

    我有以下列表输入:

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

    我要搬走 null S公司 从我的列表中,为了得到:

    List(List(first, sec), List(third))
    
    2 回复  |  直到 7 年前
        1
  •  4
  •   Ramesh Maharjan    7 年前

    如果你有 嵌套列表 作为

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

    或者你可以用 地图 filter 作为

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

    我希望答案对你有帮助

        2
  •  4
  •   Xavier Guihot    7 年前

    给出此列表:

    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"))
    
    推荐文章