Kotlin - Set:setOf()

Kotlin - Set:setOf() 首页 / Kotlin入门教程 / Kotlin - Set:setOf()

Kotlin Set接口是元素的一般无序集合。 Set接口不支持重复元素。该接口本质上是不可变的,其方法支持集合的只读函数。

Set接口使用setOf()函数创建set接口的对象列表,其中包含元素列表。

Set声明

interface Set<out E> : Collection<E> (source)

示例1 - setOf()

让无涯教程创建一个使用setOf()函数声明和遍历set元素的示例。在本示例中,无涯教程创建了一组非通用的Int类型和另一个Any类型的通用类型。

fun main(args: Array<String>){
    val intSet = setOf(2,6,4,29,4,5)
    val mySet: Set<Any> = setOf(2,6,4,29,4,5,"Ashu","Ajay")
    println(".......print Int set.........")
    for(element in intSet){
        println(element)
    }
    println(".......print Any set.........")
    for(element in mySet){
        println(element)
    }

}

输出:

.......print Int set.........
2
6
4
29
5
.......print Any set.........
2
6
4
29
5
Ashu
Ajay

在上面的示例中,无涯教程在 intset myset 中声明两次元素4,但是在遍历它们时,它们只打印一个元素4一次。这是因为SET接口不支持重复元素。

示例2 - contains() 和 containsAll()

contains()函数检查给定元素是否存在于当前集中。如果它包含在集合中,则该集合返回true,否则返回false。而containsAll()函数检查当前集合中是否存在集合类型的所有元素。如果集合包含集合类型的所有元素,则返回true,否则返回false。

链接:https://www.learnfk.comhttps://www.learnfk.com/kotlin/kotlin-set.html

来源:LearnFk无涯教程网

fun main(args: Array<String>){
    val mySet: Set<Any> = setOf(2,6,4,29,5,"Ashu","Ajay")
    val intSet = setOf(6,4,29)
    println(".......print Any set.........")
    for(element in mySet){
        println(element)
    }
    println("...mySet.contains\"Ashu\"...")
    println(mySet.contains("Ashu"))
    println("...mySet.contains(20)...")
    println(mySet.contains(20))
    println("...mySet.containsAll(intSet)...")
    println(mySet.containsAll(intSet))

}

输出:

.......print Any set.........
2
6
4
29
5
Ashu
Ajay
...mySet.contains"Ashu"...
true
...mySet.contains(20)...
false
...mySet.containsAll(intSet)...
true

示例3 - isEmpty()和 isNotEmpty()

isEmpty()函数检查当前集合是否为空。如果集合为空,则isEmpty()函数返回true,否则返回false。并且isNotEmpty()检查当前集合是否为空。如果集合不为空,则isNotEmpty()函数返回true,否则返回false。

fun main(args: Array<String>){
    val mySet: Set<Any> = setOf(2,6,4,29,5,"Ashu","Ajay")
    println(".......print Any set.........")
    for(element in mySet){
        println(element)
    }

    println("...mySet.isEmpty()...")
    println(mySet.isEmpty())

    println("...mySet.isNotEmpty()...")
    println(mySet.isNotEmpty())

}

输出:

.......print Any set.........
2
6
4
29
5
Ashu
Ajay
...mySet.isEmpty()...
false
...mySet.isNotEmpty()...
true

示例4 - drop()

drop()函数返回集合的前n个元素以外的所有元素。

fun main(args: Array<String>){
    val mySet: Set<Any> = setOf(2,6,4,29,4,5,"Ajay","Ashu","Ajay")
    println(".......print Any set.........")
    for(element in mySet){
        println(element)
    }
    val remainList= mySet.drop(4)
    println(".......print Set after mySet.drop(4).........")
    for(element in remainList){
        println(element)
    }
}

输出:

.......print Any set.........
2
6
4
29
5
Ajay
Ashu
.......print Set after mySet.drop(4).........
5
Ajay
Ashu

示例5 - elementAt() 和 elementAtOrNull()

elementAt()函数返回给定索引处的元素,elementAtOrNull()函数也返回给定索引处的元素,但是如果指定的索引不包含element,则返回null。

无涯教程网

fun main(args: Array<String>){
    val mySet: Set<Any> = setOf(2,6,4,29,4,5,"Ajay","Ashu","Ajay")

    println(".......print Any set.........")
    for(element in mySet){
        println(element)
    }

    println(".......print mySet.elementAt(3).........")
    println(mySet.elementAt(3))

    println(".......print mySet.elementAtOrNull(5).........")
    println(mySet.elementAtOrNull(5))
}

输出:

.......print Any set.........
2
6
4
29
5
Ajay
Ashu
.......print mySet.elementAt(3).........
29
.......print mySet.elementAtOrNull(5).........
Ajay

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

技术领导力实战笔记 -〔TGO鲲鹏会〕

快速上手Kotlin开发 -〔张涛〕

面试现场 -〔白海飞〕

全栈工程师修炼指南 -〔熊燚(四火)〕

技术管理案例课 -〔许健〕

爱上跑步 -〔钱亮〕

技术面试官识人手册 -〔熊燚(四火)〕

操作系统实战45讲 -〔彭东〕

零基础实战机器学习 -〔黄佳〕

好记忆不如烂笔头。留下您的足迹吧 :)