美文网首页
Kotlin Map集合

Kotlin Map集合

作者: 竖起大拇指 | 来源:发表于2020-04-02 17:30 被阅读0次

1.声明和创建Map集合

Kotlin提供了如下函数来创建Map集合:

1.MapOf():该函数返回不可变的Map集合。该函数可接受0个或多个key-value对,这些key-value对 作为Map的元素
2.mutableMapOf():该函数返回可变的MutableMap集合
3.hashMapOf() :该函数返回可变的HashMap集合。
4.linkedMapOf():该函数返回可变的LinkedHashMap集合
5.sortedMapOf():该函数返回可变的TreeMap集合。
 //创建不可变集合,返回值是Map
            var map = mapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)
            println(map)//按添加顺序排列
            println("mapOf的返回对象的实际类型:${map.javaClass}")
            //创建可变集合
            var mutableMap = mutableMapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)
            println(mutableMap)//按添加顺序排列
            println("mutableMapOf的返回对象的实际类型:${mutableMap.javaClass}")
            //创建HashMap集合
            var hashMap = hashMapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)
            println(hashMap)//不保证排列顺序
            println("hashMapOf的返回对象的实际类型:${hashMap.javaClass}")
            //创建LinkedHashMap
            var linkedHashMap = linkedMapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)
            println(linkedHashMap)//按添加顺序排列
            println("linkedMapOf的返回对象的实际类型:${linkedHashMap.javaClass}")
            //创建TreeMap集合
            var treeMap = sortedMapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)
            println(treeMap)//按key由小到大排列
            println("sortedMapOf的返回对象的实际类型:${treeMap.javaClass}")

输出结果:

{Java=86, Kotlin=92, Go=78}
mapOf的返回对象的实际类型:class java.util.LinkedHashMap
{Java=86, Kotlin=92, Go=78}
mutableMapOf的返回对象的实际类型:class java.util.LinkedHashMap
{Go=78, Java=86, Kotlin=92}
hashMapOf的返回对象的实际类型:class java.util.HashMap
{Java=86, Kotlin=92, Go=78}
linkedMapOf的返回对象的实际类型:class java.util.LinkedHashMap
{Go=78, Java=86, Kotlin=92}
sortedMapOf的返回对象的实际类型:class java.util.TreeMap

2.遍历Map

    //创建不可变集合,返回值是Map
    var map = mapOf("Java" to 86, "Kotlin" to 92, "Go" to 76)
    //遍历Map的key-value对,entris元素返回key-value对组成的Set
    for (en in map.entries) {
        println("${en.key}->${en.value}")
    }
    //先遍历Map的key,再通过key获取value
    for (key in map.keys) {
        println("${key}->${map[key]}")
    }
    //直接用for-in循环遍历Map
    for ((key, value) in map) {
        println("${key}->${value}")
    }
    //用Lambda表达式遍历Map
    map.forEach({ println("${it.key}->${it.value}") })

相关文章

  • 四、Kotlin集合

    "集合:List、Set、Map" 集合:List、Set、Map 与大多数语言不同,Kotlin 区分可变集合和...

  • Kotlin——集合

    Kotlin——集合 Kotlin的集合类由两个接口派生:Collection和Map。Collection和Ma...

  • Kotlin集合——Set集合

    Kotlin的集合类由两个接口派生:Collection和Map。 Kotlin的集合分为两大类:可变集合和不可变...

  • [Kotlin Tutorials 7] Kotlin集合

    Kotlin集合 集合创建 Kotlin标准库提供了set, list和map这三种基本集合类型的实现, 每种类型...

  • Kotlin集合——Map集合

    Kotlin的Map集合用于保存key-value对,其也被分为可变的和不可变的。 一、声明和创建Map集合 Ko...

  • Kotlin 集合

    引言 Kotlin的集合类由两个接口派生:Collection和Map(可以参考kotlin集合派生图),Coll...

  • Kotlin Map集合

    1.声明和创建Map集合 Kotlin提供了如下函数来创建Map集合: 1.MapOf():该函数返回不可变的Ma...

  • 8.集合类型(CollectionType)

    kotlin_集合类型 Array_数组 Set Map swift_集合类型 Array_数组

  • Kotlin 集合

    Kotlin 集合 1. List 2. Set 3. Map 创建 遍历

  • kotlin 集合的操作

    kotlin 集合的操作 1.集合式函数操作 a. filter和map filter即过滤,它会遍历集合并选出应...

网友评论

      本文标题:Kotlin Map集合

      本文链接:https://www.haomeiwen.com/subject/ldoxphtx.html