(十三)Kotlin简单易学 基础语法-集合Map

(十三)Kotlin简单易学 基础语法-集合Map,第1张

(十三)Kotlin简单易学 基础语法-集合Map

map创建

to看上去像关键字,但是事实上,它是个省略了点号和参数的特殊函数,to函数将它左边和右边的值转化成一对pair。

fun main() {

    val map = mapOf("jack" to 2, "jason" to 18)
    mapOf(Pair("jack",2),Pair("jack",2))

}

读取map的值

➢[ ]取值运算符,读取键对应的值,如果键不存在就返回null
➢getValue,读取键对应的值,如果键不存在就抛出异常
➢getOrElse。读取键对应的值,或者使用匿名函数返回默认值
➢getOrDefault,读取键对应的值,或者返回默认值

fun main() {

    val map = mapOf("jack" to 2, "jason" to 18)
    print(map["jack"])
    print(map.getValue("jack"))
    print(map.getOrElse("jasck"){"Unknown"})
    print(map.getOrDefault("Rose",0))

	//输出结果
	22
	Unknown
	0
}

遍历map

@RequiresApi(Build.VERSION_CODES.N)
fun main() {

    val map = mapOf("jack" to 2, "jason" to 18)
    //第一种
    map.forEach {
        print("${it.key}, ${it.value}")
    }
    //第二种
    map.forEach { key: String, value: Int ->
        print("$key, $value")
    }
}

可变集合

➢通过mutableMapOf创建可变的Map
➢getOrPut键值不存在,就添加并返回结果,否则就返回已有键对应的值

fun main() {
    //创建可变Map
    val mutableMap = mutableMapOf("jack" to 2, "jason" to 18)
    //添加
    mutableMap += "Angle" to 19
    mutableMap.put("Angle",31)

    //如果没有就会添加
    mutableMap.getOrPut("Rose"){18}
    //输出结果{jack=2, jason=18, Angle=31, Rose=18}
    print(mutableMap)
    
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/918749.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存