Kotlin学习5.3:Set接口

Kotlin学习5.3:Set接口

  • Set接口简介
  • 不可变Set
    • 查询操作
    • 批量操作
  • 可变MutableSet

Set接口简介

Set 接口和 List 接口一样,同样继承自 Collection 接口,它与 Collection 接口中的方法基本一致,但并没有对 Collection 接口进行功能上的扩充,只是比 Collection 接口更加严格了。

与 List 接口不同的是,Set 接口中的元素是无序的,并且元素不可重复,重复的元素只会被记录一次。

在Kotlin中,Set 分为可变集合 MutableSet 与不可变集合 Set ,其中可变集合 MutableSet 是对集合中的元素进行添加和删除的操作,不可变集合 Set 对几何中的元素仅提供最多的操作。

不可变Set

不可变 Set 同样是继承了 Collection 接口,调用标准库中的 setOf() 函数来创建不可变集合 Set 。
具体代码如下。

fun main() {
    val mSet = setOf(1, 8, 9, 1, 4, 7, 9, 0, 0 ,8)
    println(mSet)
}

在这里插入图片描述

查询操作

fun main() {
    val set = setOf(1, 8, 9, 4, 7, 0)
    if (set.isEmpty()){   //判断集合是否为空
        println("null")
    }else{
        println(set.size)
    }
    if (set.contains(9)){  //判断集合是否包含 9
        println("set has 9")
    }
    val index = set.iterator()  //获得集合的迭代器
    while (index.hasNext()){
        print(index.next().toString() + "\t")
    }
}

Kotlin学习5.3:Set接口_第1张图片

批量操作

fun main() {
    val set1 = setOf(1, 8, 9, 4, 7)
    val set2 = setOf(1, 8, 9, 4, 7, 0)
    if (set2.containsAll(set1)){
        println("true")
    }
}

在这里插入图片描述

可变MutableSet

MutableSet 接口继承于 Set 接口与 MutableCollection 接口,同时对接口进行扩展,在该接口中添加了对集合中元素的添加和删除等操作。

可变 MutableSet 集合是使用 mutableSetOf() 函数来创建对象的
具体代码如下。

val muSet = mutableSetOf(1, 2, 3)

MutableSet 集合可以对该集合中的元素进行修改操作,这些修改操作主要有向集合中添加元素与移除集合中的元素。
演示代码如下。

fun main() {
    val muSet = mutableSetOf(1, 2, 3)
    muSet.add(4)  //添加元素 4
    println(muSet)
    muSet.remove(2)  //移除元素 2
    println(muSet)
}

在这里插入图片描述

博客为个人收集学习,供大家交流学习。
参考书籍:《Kotlin从基础到实践》

你可能感兴趣的:(Kotlin入门学习)