引言
Kotlin的集合类由两个接口派生:Collection和Map(可以参考kotlin集合派生图),Collection和Map是Java集合框架的根接口,Java中的集合都是可变集合,但Kotlin并未如此,kotlin集合被分为两大类:可变集合和不可变集合,可变很好理解 = 可以增、删、改、读、查,不可变同样也很好理解 = 可以读、查
![](https://img.haomeiwen.com/i15058356/540d22f1efaeb8a4.png)
可变集合
从Kotlin 集合派生图中可以看到Kotlin为Collection接口派生了一个子接口——MutableCollection,该子接口又包含了两个子接口:MutableSet和MutableList,这一分支就代表了Kotlin的可变集合,Kotlin的Map派生了MutableMap接口,代表了一个可变的Map集合。
- List集合
mutableListOf() 可变的MutableList集合
arrayListOf() 可变的ArrayList集合
listOfNotNull() 不可变的List集合 - Set集合
mutableSetOf() 可变的MutableSet集合
hashSetOf() 可变的HashSet集合
linkedSetOf() 可变的LinkedHashSet集合
sortedSetOf() 可变的TreeSet集合 - Map集合
mutableMapOf() 可变的mutableMap集合
hashMapOf() 可变的HashMap
LinkedMapOf() 可变的LinkedHashMap
sortedMapOf() 可变的TreeMap集合
不可变集合
Collection直接派生的Set和List接口则代表了不可变集合
listOf、setOf 、mapOf() 返回的均为不可变集合
网友评论