日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Kotlin?List與Set和Map實例講解_Android

作者:知奕奕 ? 更新時間: 2022-11-22 編程語言

List

和 java 中的 list 幾乎一致;

getOrElse 取出對應索引,如果該索引不存在或者為 null,就返回一個 lambda 函數;

getOrNull 取出對應索引,如果找不到就直接返回 null

val lis = listOf("abc", "asd", "qwe")
println(lis.getOrElse(0) { "cant find it" })
println(lis.getOrNull(0) ?: "null")

可變列表

我們默認使用的 listof 創建的列表是無法進行數據改動的;

此時就需要使用可變列表 mutableListOf

val mut = mutableListOf("a","b","c")
mut.add("k")
mut.removeAt(0)

可變列表和不可變列表還可以使用方法進行相互轉換;

mut.toList(); // 轉為不可變列表
mut.toMutableList(); // 再轉回可變列表

mutator

任何可變列表都具有此屬性;

我們可以直接使用運算符進行列表元素的增刪;

removeIf 表示移除掉符合條件的指定元素

mut += "tom"
mut -= "tom"
mut.removeIf { it.contains("tom") }

遍歷

目前有三種遍歷方式,優缺點自己判斷;

不做過多解釋,看代碼就懂了

for (str: String in mut) {
    println(str)
}
mut.forEach {
    println(it)
}
mut.forEachIndexed { index: Int, s: String ->
    println("$index + $s")
}

set

set 集合中的元素會自動去重!

檢索 set 中的元素需要使用

val setdemo = setOf("asd", "wqe", "asd")
println(setdemo.elementAt(0))

可變集合

和可變列表一致,依葫蘆畫瓢即可;

val setmut = mutableSetOf("son","son","sun")
setmut += "damn"
setmut -= "son"

快速去重

目前有倆種方式:

list 轉為 set 然后再轉回 list;

使用函數 distinct

// 二次轉換去重
val lis = mutableListOf("apple", "pear", "pear")
lis.toSet().toList()
// 函數去重
lis.distinct()

列表類型的轉換

可以直接將列表轉換為數組

val intarr = intArrayOf(1, 2, 3)
val intlist = listOf(1, 2, 3).toIntArray()

map

映射表

下面展示了兩種獲取指定 key 的 value 的方法

可變映射表這里不說了

    val m = mapOf("map1" to "asd", "map2" to "qwe")
    println(m.getValue("map1"))
    println(m["map2"])

原文鏈接:https://blog.csdn.net/delete_you/article/details/127095015

欄目分類
最近更新