第四章 Scala常用数据结构_映射(map)

1:不可变的map
     var map1=Map[String,Int]("zhaozhanlong" ->18,"wyx" -> 19)
    for(i <- map1 ){
        println(i)
        //在scala中我们吧(zhaozhanlong,18)这样的键值对称作为对偶 ,对偶用()表示是元组的最简单的形式
    }
 
    var map1=Map[String,Int](("zhaozhanlong" ,18),"wyx" -> 19)
    for(i <- map1 ){
        println(i)
        //在scala中我们吧(zhaozhanlong,18)这样的键值对称作为对偶 ,对偶用()表示
    }
上面两种写法执行的值是一样的
 
 
 
    //往map中添加元素
    map1+="yjw"->10
    map1+=("zha"->11)
   for(i <- map1 ){
        println(i)
    }
 
2)。不可变map修改值
      //修改map的值
   // map1("zhaozhanlong")=20 因为是不可变的map 所以这样修改值是报错的 ,但是map的key是不能重复的我们可以利用这一点去修改值
    map1+="zhaozhanlong"->20
    for(i <- map1 ){
        println(i)
    }
 
3)。map取值
    if(map1.contains("wyx")){//添加判断,判断key是否存在
      println(map1("wyx"))
    }
 
    //取出所有的key和value
    for((k,v) <-map1 ){
      println(k+"_"+v)
    }
      //取出所有的key
    var keymapmap1.keys
    println(keymap)
    //取出所有key的值
    for(i <- keymap){
      println(map1(i))
    }
2:可变映射(map)
     //可变映射(主要是看 能不能对里面的值更改)  ,修改完值 ,key会变到map后面
    var map2=scala.collection.mutable.Map[String,Int]("zzl"->19,"yjw"->20)
    map2("zzl")=23
    println(map2("zzl"))
    for(i <- map2){
      println(i)
    }
posted @ 2017-12-26 20:59  瀚海行舟  阅读(411)  评论(0编辑  收藏  举报