前言
集合是一个大头,经常会碰到。
所以,我做了一个集锦。看起来会比较长,所以,我做了一些取舍。尽量缩短,又可以了解清楚。
这部分的内容,大部分语言都会涉及。有些地方就不放开详述。
文章定位你可以大体了解有哪些。大致怎么用。
用到的时候,完全可以查一下就知道了。
目录如下
- set、list以及map
- 创建
- 迭代器
- 序列化处理
- 过滤
- 集合的加减
- 分组
- 取集合的一部分
- 取单个元素
- 排序
- 聚合操作
- 集合写操作
- list
- Set
- Map
set、list 以及 map
这图太棒了。基本就把Kotlin中的集合说个框架了。
主要分为mutable可变、跟非可变
创建
大致格式就是这样。
listOf()、setOf()、mutableListOf()、mutableSetOf()
范例
val numbersMap = mapOf("key1" to 1, "key2" to 2, "key3" to 3, "key4" to 1)
val numbersSet = setOf("one", "two", "three", "four")
空集合
emptyList()、emptySet() 与 emptyMap()
迭代器
跟java基本上是差不多的。之前的Kotlin入门中,也讲到过。就不详述了。每个部分,给范例大致看一下。
iterator
看下范例,就清楚了,其他语言你很可能碰到过了
val numbers = listOf("one", "two", "three", "four")
val numbersIterator = numbers.iterator()
while (numbersIterator.hasNext()) {
println(numbersIterator.next())
}
for…in
看下范例,就清楚了,其他语言你很可能碰到过了
val numbers = listOf("one", "two", "three", "four")
for (item in numbers) {
println(item)
}
forEach
看下范例,就清楚了,其他语言你很可能碰到过了
val numbers = listOf("one", "two", "three", "four")
numbers.forEach {
println(it)
}
分为可变迭代器和非可变迭代器
怎么区分呢
可从字面上了解,如果mutableXXXXOf
那么调用iterator得到的 -> 就是可变的iterator
so Easy》。。。。。