Scala 删除List(Map)中 为null的值

前言

实际应用中,需要对List(Map) 中为null 的进行删除操作。

程序

  • List(null,Map())格式
object test_Map {

  def main(args: Array[String]): Unit = {
    var gridinfo: Map[String, List[Integer]] = Map ()
    var grid_list :List[Map[String,List[Integer]]]= List()

    gridinfo += ("str1" -> List(3,5))
    gridinfo += ("str2" -> List(3,5))
    grid_list +:= gridinfo

    grid_list +:= null

    println("删除List(Map)中 为null的值之前============")
    println(gridinfo)
    println(grid_list)

    grid_list = grid_list.filter(_ !=null)
    println("删除List(Map)中 为null的值之后============")

    println(gridinfo)
    println(grid_list)

  }
}

结果展示

删除List中 为null的值之前============
Map(str1 -> List(3, 5), str2 -> List(3, 5))
List(null, Map(str1 -> List(3, 5), str2 -> List(3, 5)))
删除List中 为null的值之后============
Map(str1 -> List(3, 5), str2 -> List(3, 5))
List(Map(str1 -> List(3, 5), str2 -> List(3, 5)))
  • List(null,Map(),Map())格式
object test_Map {

  def main(args: Array[String]): Unit = {
    var gridinfo: Map[String, List[Integer]] = Map ()
    var grid_list :List[Map[String,List[Integer]]]= List()

    gridinfo += ("str1" -> List(3,5))
    grid_list +:= gridinfo
    gridinfo += ("str2" -> List(3,5))
    grid_list +:= gridinfo

    grid_list +:= null

    println("删除List(Map)中 为null的值之前============")
    println(gridinfo)
    println(grid_list)

    grid_list = grid_list.filter(_ !=null)
    println("删除List(Map)中 为null的值之后============")

    println(gridinfo)
    println(grid_list)

  }
}

结果展示

删除List(Map)中 为null的值之前============
Map(str1 -> List(3, 5), str2 -> List(3, 5))
List(null, Map(str1 -> List(3, 5), str2 -> List(3, 5)), Map(str1 -> List(3, 5)))
删除List(Map)中 为null的值之后============
Map(str1 -> List(3, 5), str2 -> List(3, 5))
List(Map(str1 -> List(3, 5), str2 -> List(3, 5)), Map(str1 -> List(3, 5)))

总结

  • 主要是 filter()方法的使用
  • 业务需求
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nsq_ai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值