一、Scala的map的分类:不可变,可变
二、Scala的map的常见操作:添加元素,删除元素,查询元素,修改元素,遍历。
三、Scala的不可变map
查询有两种方法:①get方法.输入key,如果找到,就返回包装数据,如果没有找到,就返回None。
②直接:map(key名).如果key不存在,就会报错!!!
遍历有两种方法:①for;②foreach
object map {def main(args: Array[String]): Unit = {//不可变mapval map1 =Map("鄂"->"湖北省","湘"->"湖南省")//1.添加
// val map2=map1+("豫"->"河南省")//如果key存在,就是修改
// val map3 =map1+("鄂"+"河南省")//2.删除。只要提供keyval map3=map1-"鄂"//3.查询
// val rs =map1.get("鄂")
// println(rs.get)
// println(map1("鄂1"))//4.修改元素:把青->青海,改为青->青海省//map1("青")="青海省"val map4=map1+("青"->"青海省")println(map4)//5.遍历for ((key,value)<-map1){println(s"$key 是${value}的简称")}map1.foreach {case(key,value)=>{println(s"$key 是${value}的简称")}}}
}}
}
四、Scala的可变map
package test_25
//可变的map要导入包
import scala.collection.mutable
object mutatable_map {//类型:可变//操作:添加元素,删除元素,查询元素,修改元素,遍历def main(args: Array[String]): Unit = {//不可变mapval map1 = mutable.Map("鄂"->"湖北省","湘"->"湖南省")//1.添加map1 += ("豫"->"河南省")//2.删除。只要提供keymap1 -= ("鄂")//3.查询//3.1get方法.输入key,如果找到,就返回包装数据,如果没有找到,就返回None//3.2直接:map(key名).如果key不存在,就会报错!!!val rs =map1.get("鄂")println(rs.get)println(map1("鄂1"))//4.修改元素:把青->青海,改为青->青海省//map1("青")="青海省"val map4=map1+("青"->"青海省")println(map4)//5.遍历//for//foreachfor ((key,value)<-map1){println(s"$key 是${value}的简称")}map1.foreach {case(key,value)=>{println(s"$key 是${value}的简称")}}}}