Kotlin Set接口是元素的一般无序集合。 Set接口不支持重复元素。该接口本质上是不可变的,其方法支持集合的只读函数。
Set接口使用setOf()函数创建set接口的对象列表,其中包含元素列表。
interface Set<out E> : Collection<E> (source)
让无涯教程创建一个使用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接口不支持重复元素。
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
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
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
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
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)