说明:各种集合对于解决问题都具有重要意义,并且经常用到。与数组不同的是可变集合的大小可以动态改变
List:是一个有序集合,可通过索引(下标)访问元素。元素可以在list中多次出现丶元素可重复
Set:是唯一元素集合。一组无重复的对象。一般来说set中元素的顺序并不重要丶无序集合
Map:(字典)是一组键值对。键是唯一的,每个键都刚好映射到一个值,值可以重复
集合创建的技巧
集合可分为可变集合,显而易见,是指集合创建完成之后,可以对集合进行增删查改操作
不可变集合,显而易见,是指集合创建完成之后,不能对集合进行增删查改操作,会抛异常
列表的创建方式——可变列表
val arrayString= mutableListOf<String>()
arrayString.add("1")
arrayString.add("1")
arrayString.add(2,"2")
val arrayString2= mutableListOf<String>("1","1","2")
列表的创建方式——不可变列表
//列表的创建方式——不可变列表
//创建后不可添加丶删除元素
val arrayInt= listOf<Int>(1,2,3)
Map字典的创建——可变字典
//字典是一组键值对。健是唯一的,每个键刚好映射到一个值,值可以重复
val arraymap1= arrayMapOf(Pair("1","2"))
val arraymap2= mutableMapOf<String,String>()
arraymap2["1"] = "1"
arraymap2["2"] = "2"
arraymap2["3"] = "3"
arraymap2["3"] = "4"//此时会覆盖掉上面的记录
//使用Pair指定集合初始化的yuan's
val arraymap3= mutableMapOf<String,String>(Pair("1","2"))
?Map字典的创建——不可变字典
//map字典的创建——不可变字典
//创建后不可添加丶删除元素
val arraymap4= mapOf<String,String>(Pair("1","2"))
set集合的创建方式——可变集合,元素唯一
val set= mutableSetOf<Int>()
set.add(1)
set.add(2)
set.add(3)
set.add(3)//添加不进去的
for (item in set){
println(item)
}
val set2= mutableSetOf<Int>(1,2,3)
set集合的创建方式——不可变集合,元素唯一
set集合的创建方式——不可变集合,元素唯一
val set3= setOf<Int>(1,2,3)
对集合的常用操作
val array= mutableListOf<String>("1","2","3","4","5","2","2")
//判断是否为空
println("isEmpty:${array.isEmpty()}")
//判断是否包含该元素
println("contains:${array.contains("6")}")
//获取下标位置
println("get:${array[0]}")
//判断元素在集合中的下标:1
println("indexof:${array.indexOf("2")}")
//判断元素在集合中的下标:5 该元素的最后索引
println("lastindexof:${array.lastIndexOf("2")}")
结束
|