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。

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。

链接: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,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

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

技术教程推荐

从0开始学微服务 -〔胡忠想〕

TypeScript开发实战 -〔梁宵〕

架构实战案例解析 -〔王庆友〕

Vim 实用技巧必知必会 -〔吴咏炜〕

Linux内核技术实战课 -〔邵亚方〕

大数据经典论文解读 -〔徐文浩〕

说透低代码 -〔陈旭〕

React Native 新架构实战课 -〔蒋宏伟〕

手把手教你落地DDD -〔钟敬〕

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