scala map

map

package scala

object Demo20Map {
  def main(args: Array[String]): Unit = {

    /**
      * map k v 格式
      *默认不可变
      */
    val map = Map(("001","张三"),("002","李四"))
    println(map)

    //可以通过key 获取value
    //如果key 不存在就会报错
    println(map("001"))
    //如果key不存在返回默认值
    println(map.getOrElse("005","默认值"))

    println(map.keys)
    println(map.values)

    val map1 = Map(("001", 23), ("002", 24), "003" -> 25)

    //将年龄加1
    /**
      * map ; 将map中的元素传给后面的函数,返回一个新的map 。 函数的参数是一个二元组
      * mapValues: 将map 中所有value 传给后面的函数,返回一个新的map
      *
      */

    val map2: Map[String, Int] =map1.map((kv:(String,Int ))=>{
      val key: String = kv._1
      val value: Int = kv._2

      (key, value+1)
    })
    println(map2)

    val map3: Map[String, Int] = map1.mapValues((value: Int) => value + 1)
    println(map3)



  }
}

 

posted @ 2021-07-14 11:21  坤坤无敌  阅读(74)  评论(0)    收藏  举报