scala集合之map使用

前言

map在scala的开发中算是使用非常频繁的集合之一,本文将通过实际的代码演示下map在scala中的使用

1、创建map

scala中的map主要分为2种类型,可变的map和不可变的map,这个和数组类似

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

    //不可变map
    val map1 = Map("name" -> "zhangsan","age" -> 12)
    println(map1)
    println()

    //可变map
    val map2 = mutable.Map("name" -> "zhangsan","age" -> 12)
    println(map2)

    //通过二元组的方式创建
    val map34 = mutable.Map(("name","jike"),("age",12),("city","hangzhou"))
    println(map34)

}

当然,也可以创建一个空的map,然后往map里面填充数据

    val map3 = new mutable.HashMap[String,String];
    map3.put("name","jike")
    map3.put("city","hangzhou")
    println(map3)
    println()

2、map中元素的修改与删除

修改map中的元素,必须是可变的map才可以做此操作

    //往map中继续添加元素
    println()
    map34.put("name","jiky")
    println(map34)

修改已经存在的某个元素只需要替换key的值即可

map继续添加元素

    map34 += ("salary" -> 10000)
    println(map34)

删除元素

    //删除元素
    println()
    map34 -= ("salary","10000")
    println(map34)

3、map中获取元素

scala中,提供了3种获取map中的key的方式,分别是:map(key),map.get(key),map.getOrElse()

    //通过二元组的方式创建
    val map34 = mutable.Map(("name","jike"),("age",12),("city","hangzhou"))
    println(map34)

    println()

    //直接获取某个存在的key
    println(map34("name"))

    //直接获取某个存在的key
    println(map34.get("age").get)

    //直接获取某个存在的key,不存在,使用默认值
    println(map34.getOrElse("age1","默认的值"))

3、map遍历

scala中提供了多种遍历内部元素的方式,现列举如下

    //通过二元组的方式创建
    val map34 = mutable.Map(("name","jike"),("age",12),("city","hangzhou"))
    println(map34)
    println()

    //map遍历
    println()
    for((k,v) <- map34) println("k=" + k +",v="+v)

    println()
    for(v <- map34.keys) println("v="+v)

    println()
    for(v <- map34.values) println("v="+v)

    println()
    for(v <- map34) println("v="+v._2)

通过上面几种方式,都可以对整个map做遍历操作,其中最后一种得到的v是一个元组,需要继续从元组中获取value的值

 

 

 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Scala中的集合分为可变集合和不可变集合两种。不可变集合一旦创建,就不能进行修改。Scala中默认使用不可变集合,如果需要修改集合中的元素,则需要使用可变集合Scala中的集合包括List、Set、Map等。常用的集合操作有: 1. 创建集合:可以使用不可变集合的apply方法或者可变集合的new关键字创建集合。 2. 遍历集合:可以使用for循环、foreach方法或者map方法遍历集合。 3. 过滤元素:可以使用filter方法过滤集合中不符合条件的元素。 4. 转换集合:可以使用map方法将集合中的元素进行转换。 5. 排序集合:可以使用sorted方法对集合中的元素进行排序。 6. 操作集合:可以使用集合的各种方法进行元素的添加、删除、更新等操作。 示例代码: ``` // 创建不可变列表 val list = List(1, 2, 3) // 遍历列表 for (i <- list) { println(i) } // 过滤列表中的偶数 val filteredList = list.filter(_ % 2 == 0) // 转换列表中的元素 val mappedList = list.map(_ * 2) // 排序列表 val sortedList = list.sorted // 创建可变列表 val mutableList = scala.collection.mutable.ListBuffer(1, 2, 3) // 添加元素到可变列表 mutableList += 4 // 删除可变列表中的元素 mutableList -= 2 // 更新可变列表中的元素 mutableList(0) = 0 // 遍历可变列表 mutableList.foreach(println) ``` 以上是Scala集合的基本用法,具体使用时可以根据需要选择不同的集合类型和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

逆风飞翔的小叔

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

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

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

打赏作者

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

抵扣说明:

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

余额充值