Scala中的map

31 阅读1分钟

(一)Map 的定义和创建

Map是一种存储键值对的数据结构,每个键在 Map 中是唯一的。在 Scala 中,我们可以使用多种方式创建 Map。

Map 创建格式

1.不可变 Map:val mapName: Map[KeyType, ValueType] = Map(key1 -> value1, key2 -> value2,...)

2.可变 Map(需导入scala.collection.mutable.Map):val mapName:

mutable.Map[KeyType, ValueType] = mutable.Map(key1 -> value2,...)

代码示例:

package map

/*
01 ---> 胡同学
02 ---》王同学

 42 → 湖北省
 14 → 山西省

 鄂A → 武汉
 鄂N → 潜江

 键值对
  key → value 结构

  map:用来表示键值对格式
 */
object map01 {
  def main(args: Array[String]): Unit = {
    val map1 = scala.collection.mutable.Map((42 ->"湖北省"),(14->"山西省"))
    println(map1)
  }

}

结果:

image.png

map的常用方法:

1.添加键值对

2.删除

3.查询:根据key去找value

4遍历

代码演示:

package map

/*
01 ---> 胡同学
02 ---》王同学

 42 → 湖北省
 14 → 山西省

 鄂A → 武汉
 鄂N → 潜江

 键值对
  key → value 结构

  map:用来表示键值对格式
  常见操作:
  1.添加键值对
  2.删除
  3.查询:根据key去找value
  4。遍历
 */
import scala.collection.mutable
object map01 {
  def main(args: Array[String]): Unit = {
    val map1 = scala.collection.mutable.Map((42 ->"湖北省"),(14->"山西省"))
    // 添加一个元素
    //val map2 = map1 +(19 -> "河南省")
    map1 += (19 ->"河南省")

    // 2.删除。删除根据key值来删除
    map1 -= 42

    // 3. 14对应那个省

    val ret = map1.get(14) // 如果找到了,就有值;没有找到就是None
    if(ret.isDefined){
      println(ret.get)
    }
    println(map1)

    // 4.遍历

    for ((key , value)<- map1){
      println(s"${value}身份证的前两位编号是${key}")
    }
  }

}

结果:

image.png