1、熟悉常用集合类
2、掌握List接口的使用方法
3、掌握Set接口的使用方法
4、掌握Map接口的使用放
集合的概述:Kotlin中的集合就类似一个容器,用于存储一系列对象,这些对象可以是任意的数据类型,并且长度可变。
集合按照其存储结构可分为两大类:Collection和Map
Collection用于存储一系列符合规则的元素,它有3个重要的子接口,分别是List、Set和MutableCollection。其中,List的特点是元素有序、元素可重复。Set的特点是元素无序并且不可重复。
Map是双列集合类的根接口,用于存储具有键(Key)、值(Value)映射关系的元素,每个元素都包含一对键值,在使用Map集合时可以通过指定的Key找到对应的Value。
List接口简介:
List接口继承自Collection接口。是单列集合的一个重要分支,习惯性地会将实现List接口的对象称为List集合。在List集合中允许出现重复的元素,所有的元素是以一种线性方式存储的,在程序中可通过索引来访问集合中的指定元素
不可变集合List
在Kotlin,List分为可变集合MutableList和不可变集合List,其中可变集合MutableList可以对集合中的元素进行增加和删除的操作,不可变结合List对集合中的元素仅提供只读操作
在Kotlin中,不可变List是一个只读操作的集合,只有size属性和get()函数。
查询操作:List集合的查询操作主要有判断集合是否为空,获取集合中元素的个数以及返回集合中的元素的迭代器。
批量操作:在List集合中,经常会判断一个集合中是否包含某个集合,为此,Kotlin提供了一个contains All(elements:Collection<@UnsafeVariance E>)方法。
检索操作:List集合中的检索操作主要有查询集合中某个位置的元素、返回集合中指定元素首次出现的索引、返回指定元素最后一次出现的索引以及返回集合中指定的索引之间的集合。
遍历操作:List集合中的遍历操作主要有返回一个集合的迭代器,以及从指定位置开始返回集合的迭代器。
可变MutableList
MutableList是List集合中的可变集合,MutableList<E>接口继承于List<E>接口和Mutable Collection<E>接口,增加了对集合中元素的添加及删除的操作。
查询操作:MutableList集合的查询操作与List集合一样,主要有判断集合是否为空、获取集合中元素的数量以及返回集合中的元素的迭代器
修改操作:MutableList集合可以对该集合中的元素进行修改操作,这些修改操作主要有向集合中添加一个元素、在指定位置添加元素、移除一个元素、移除指定位置的元素以及替换指定位置的元素。
批量操作:MutableList集合的批量操作主要有判断集合中是否包含另一个集合、向集合中添加一个集合、移除集合中的一个集合以及将集合中的所有元素清空。
遍历操作:MutableList集合中的遍历操作主要有返回一个集合的迭代器与返回从指定位置开始的集合的迭代器。
Set接口简介:
Set接口和List接口一样,同样继承自Collection接口,它与Collection接口中的方法基本一致,但并没有对Collection接口进行功能上的扩充,只是比Collection接口更加严格了。
与List接口不同的是,Set接口中的元素是无序的,并且元素不可重复,重复的元素只会被记录一次。
Kotlin中,Set分为可变集合MutableSet与不可变集合Set,其中可变集合MutableSet是对集合中的元素进行增加和删除的操作,不可变集合Set对集合中的元素仅提供只读的操作。
不可变Set
不可变Set同样是继承了Collection接口,调用标准库中的setOf()函数来创建不可变Set集合,不可变集合Set与不可变集合List类似,都是一个只提供只读操作的集合,并且Set集合中的操作与List集合也类似,Set集合的主要操作有查询操作与批量操作
1、查询操作:
Set集合的查询操作主要有判断集合是否为空、获取集合中元素的数量、判断集合中是否包含某一个元素以及返回集合中的元素的迭代器
2、批量操作:
Set集合中的批量操作的方法只有containsAll(elements:Collection<@UnsafeVariance E>),这个方法的含义是判断集合中是否包含某一个集合。
可变MutableSet:
MutableSet接口继承于Set接口与MutableCollection接口,同时对Set接口进行扩展,在该接口中添加了对集合中元素的添加和删除等操作。
Map接口简介:
Map接口是一种双列集合,它的每个元素都包含一个键对象Key和一个值对象Value,键和值对象之间存在一种对应关系,称为映射。
Map集合中的元素是无序可重复的,Map集合与List、Set集合类似,同样分为不可变集合Map和可变集合MutableMap两种,其中可变集合MutableMap可以对集合中的元素进行增加和删除的操作,不可变集合Map对集合中的元素仅提供只读操作。
不可变Map:
查询操作:
不可变Map集合的查询操作主要有判断集合是否为空、获取集合中元素的数量、判断集合中是否包含指定的键、判断集合中是否包含指定的值以及根据key(键)获取value(值)
遍历操作:Map集合也经常需要进行遍历操作,不过由于该集合中存储的是键值映射关系,所以在遍历时,与List、Set集合有些区别。
可变MutableMap:
1. 修改操作:MutableMap集合可以对该集合中的元素进行修改操作,这些修改操作主要有向集合中添加元素与移除元素
2、批量操作:MutableMap集合中的批量操作的方法有putAll(from:Map<out K, V>)和clear(),这两个方法的含义分别是向集合中添加一个集合与清空集合中的映射。