Kotlin中数组和集合的使用
创始人
2025-06-01 00:40:44
0

在 Kotlin 中,数组和集合是用于存储多个元素的数据结构。这里我们会详细介绍 Kotlin 中数组和集合的用法。

1.数组(Array)

创建数组:

在 Kotlin 中,可以使用 arrayOf() 函数创建数组。例如:

val arr = arrayOf(1, 2, 3, 4, 5)

创建指定长度和初始化的数组:

val arr2 = Array(5) { i -> (i * i).toString() }

数组元素的访问和修改:

val firstElement = arr[0] // 获取第一个元素
arr[1] = 6 // 将第二个元素设置为 6

数组的常用方法和属性:

val size = arr.size // 数组大小
val isEmpty = arr.isEmpty() // 是否为空
val contains = arr.contains(3) // 是否包含元素 3

2.集合(Collections)

在 Kotlin 中,集合分为两大类:只读集合和可变集合。集合主要有三种类型:List、Set 和 Map。

2.1列表(List)

创建列表:

val list = listOf(1, 2, 3, 4, 5) // 只读列表
val mutableList = mutableListOf(1, 2, 3, 4, 5) // 可变列表

列表元素的访问:

val firstElement = list[0] // 获取第一个元素

列表元素的修改(仅限于可变列表):

mutableList[1] = 6 // 将第二个元素设置为 6

列表的常用方法和属性:

val size = list.size // 列表大小
val isEmpty = list.isEmpty() // 是否为空
val contains = list.contains(3) // 是否包含元素 3
val subList = list.subList(1, 4) // 获取子列表

2.2 集合(Set)

创建集合:

val set = setOf(1, 2, 3, 4, 5) // 只读集合
val mutableSet = mutableSetOf(1, 2, 3, 4, 5) // 可变集合

集合的常用方法和属性:

val size = set.size // 集合大小
val isEmpty = set.isEmpty() // 是否为空
val contains = set.contains(3) // 是否包含元素 3

2.3 映射(Map)

创建映射:

val map = mapOf(1 to "One", 2 to "Two", 3 to "Three") // 只读映射
val mutableMap = mutableMapOf(1 to "One", 2 to "Two", 3 to "Three") // 可变映射

映射元素的访问:

val value = map[1] // 获取键为 1 的值

映射元素的修改(仅限于可变映射):

mutableMap[1] = "Updated One" // 更新键为 1 的值

映射的常用方法和属性:

val size = map.size // 映射大小
val isEmpty = map.isEmpty() // 是否为空
val containsKey = map.containsKey(1) // 是否包含键为 1 的元素
val containsValue = map.containsValue("One") // 是否包含值为 "One" 的元素
val keys = map.keys // 获取映射的所有键
val values = map.values // 获取映射的所有值

对集合进行操作(适用于 List、Set 和 Map):

1.迭代

for (element in list) {println(element)
}for (index in list.indices) {println("Element at $index is ${list[index]}")
}for ((key, value) in map) {println("Key: $key, Value: $value")
}

2.过滤

val filteredList = list.filter { it % 2 == 0 } // 过滤出偶数元素的列表

3.映射

val squaredList = list.map { it * it } // 计算每个元素的平方

4.排序

val sortedList = list.sorted() // 生成排序后的列表
val sortedDescendingList = list.sortedDescending() // 生成降序排序后的列表

5.归约

val sum = list.reduce { acc, i -> acc + i } // 计算列表中所有元素的和

6.分组

val groupedByEvenOdd = list.groupBy { if (it % 2 == 0) "even" else "odd" } // 将元素按奇偶分组

这些只是 Kotlin 中数组和集合的基本用法。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...