欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Kotlin List與Set和Map實(shí)例講解

 更新時(shí)間:2022年10月10日 10:14:48   作者:知奕奕  
集合是可變數(shù)量(可能為0)的一組條目,kotlin標(biāo)準(zhǔn)庫提供一個(gè)整套用于集合管理的工具,各種集合對(duì)于解決問題都具有重要意義,并且經(jīng)常用到。kotlin中的集合與Java基本類似

List

和 java 中的 list 幾乎一致;

getOrElse 取出對(duì)應(yīng)索引,如果該索引不存在或者為 null,就返回一個(gè) lambda 函數(shù);

getOrNull 取出對(duì)應(yīng)索引,如果找不到就直接返回 null

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

可變列表

我們默認(rèn)使用的 listof 創(chuàng)建的列表是無法進(jìn)行數(shù)據(jù)改動(dòng)的;

此時(shí)就需要使用可變列表 mutableListOf

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

可變列表和不可變列表還可以使用方法進(jìn)行相互轉(zhuǎn)換;

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

mutator

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

我們可以直接使用運(yùn)算符進(jìn)行列表元素的增刪;

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

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

遍歷

目前有三種遍歷方式,優(yōu)缺點(diǎn)自己判斷;

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

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

set

set 集合中的元素會(huì)自動(dòng)去重!

檢索 set 中的元素需要使用

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

可變集合

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

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

快速去重

目前有倆種方式:

list 轉(zhuǎn)為 set 然后再轉(zhuǎn)回 list;

使用函數(shù) distinct

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

列表類型的轉(zhuǎn)換

可以直接將列表轉(zhuǎn)換為數(shù)組

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"])

到此這篇關(guān)于Kotlin List與Set和Map實(shí)例講解的文章就介紹到這了,更多相關(guān)Kotlin List Set Map內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論