集合

作者: 夜远曦白 | 来源:发表于2020-05-12 16:33 被阅读0次

常用集合类

  • 单列集合 Collection:Iterable 是单列集合类的根接口
  • Collection用于存储一系列符合规则的元素,它有3个重要的子接口,分别是List、Set和MutableCollection
  • List 的特点是元素有序、元素可重复
  • Set 的特点是元素无序并且不可重复
  • MutableCollection 的特点是元素可变
Collection继承关系图
  • 图中虚线框标识的都是Java中的集合类,但是这些类可以在Kotlin中使用

  • Collection是所有单列集合的父接口

Collection接口方法
  • Map是双列集合类的根接口,用于存储具有键(Key)、值(Value)映射关系的元素,每个元素都包含一对键值,在使用Map集合时可以通过指定的Key找到对应的Value
Map继承关系

List接口的使用方法

  • 有序、允许出现重复的元素

  • 以一种线性方式存

  • 可以通过索引来访问集合中的指定元素

  • 可变集合MutableList可以对集合中的元素进行增加和删除的操作

  • 不可变集合List对集合中的元素仅提供只读操作

  • 尽可能多用不可变集合List,这样可以在一定程度上提高内存效率

  • 不可变List是一个只读操作的集合,只有size属性和get()函数,继承自Collection进而继承自Iterable,通过listOf()函数创建

事例 查询操作
  • containsAll(elements:Collection<@UnsafeVariance E>)方法判断一个集合中是否包含某个集合
检索操作 迭代器
  • 可变集合MutableList<E>接口继承于List<E>接口和MutableCollection<E>接口,增加了对集合中元素的添加及删除的操作,使用mutableListOf()函数来创建对象
查询操作 修改操作 批量操作 迭代器

Set接口的使用方法

  • 无序,元素不可重复
  • 可变集合MutableSet与不可变集合Set,可变集合MutableSet是对集合中的元素进行增加和删除的操作,不可变集合Set对集合中的元素仅提供只读的操作
查询操作
  • 批量操作的方法只有containsAll(elements:Collection<@UnsafeVariance E>),判断集合中是否包含某一个集合

  • Set集合中也可以进行List集合中的索引操作和迭代器操作

  • 可变MutableSet集合是使用mutableSetOf()函数来创建对象

修改操作

Map接口的使用方法

  • Map接口是一种双列集合,它的每个元素都包含一个键对象Key和一个值对象Value,键和值对象之间存在一种对应关系,称为映射
  • 无序可重复的,分为不可变集合Map和可变集合MutableMap两种
  • 不可变Map集合的查询操作主要有判断集合是否为空、获取集合中元素的数量、判断集合中是否包含指定的键、判断集合中是否包含指定的值以及根据key(键)获取value(值)
查询操作
  • 可变MutableMap集合是使用mutableMapOf ()函数来创建
修改数据
  • MutableMap集合中的批量操作的方法有putAll(from:Map<out K, V>)和clear(), 含义分别是向集合中添加一个集合与清空集合中的映射

  • 无论是Map还是MutableMap,获取到的键、值或者键/值对的Set都是只读的,即便是MutableMap获取的MutableSet也是只读的,因为在Map或者MutableMap中,将这些Set设置为只读常量。使用keySet()函数抽取key序列,将map中的所有keys生成一个Set。使用values()函数抽取value序列,将map中的所有values生成一个Collection。一个生成Set,另一个生成Collection的原因是key是独一无二的,而value允许重复。

Kotlin

相关文章

  • 我的Swift的学习总结 -->第二周

    集合 集合:Set,定义一个集合可以写成:var 集合名 : Set<集合类型> = [集合元素],具体的集合应用...

  • markdown 测试

    集合 集合 集合 引用

  • kotlin学习第五天:集合,高阶函数,Lambda表达式

    集合 list集合 list集合分为可变集合与不可变集合。由list of创建的集合为不可变集合,不能扩容,不能修...

  • kotlin练习 ---- 集合练习

    kotlin练习 - 集合练习 Set集合 Set集合创建 Set集合的使用 List集合 List集合创建 Li...

  • 集合总结

    集合 集合分为单列集合和双列集合两种: 一.单列集合: Collection是单列集合的顶级接口: 其中有三类集合...

  • 映射、元组、集合

    映射 元组 集合 集合之seq 集合之set 集合之map

  • 16.Collection集合

    主要内容: Collection 集合 迭代器 增强for List 集合 Set 集合 1,集合 集合是java...

  • 集合与有序集合

    集合分为有序集合 (zset) 和无序集合 (set), 一般无序集合也直接说成集合 无序集合 (set) 无序集...

  • python入坑第八天|集合

    好的,各位蛇友,我们今天来学习集合。 内容: 集合的创建 集合操作符号 集合的内置函数 集合的创建 集合用set(...

  • 集合框架

    集合框架的概念 集合:存放数据的容器 集合框架:java中,用于表示集合,以及操作集合的类和接口的统称 数组与集合...

网友评论

      本文标题:集合

      本文链接:https://www.haomeiwen.com/subject/fmgvnhtx.html