集合
1、setOfNotNull() :以此方式创建一个非空Set集合!
fun main(args: Array<String>) {
val set = setOfNotNull(null, 1, 2, 3, null)
val list= listOfNotNull(null,1,2,3,null)
println(set)
println(list)
}

2、shuffled():生成随机数!
fun main(args: Array<String>) {
val numbers = (0 until 50).asSequence()
val result = numbers.shuffled().take(5)
println(result.toList()) //five random even numbers below 100
}

3、Indexed():一般用于集合的 onEach() and flatMap()的扩展,用于打印索引和集合元素
fun main(args: Array<String>) {
listOf("a", "b", "c", "d").onEachIndexed { index, item ->
println("$index:$item")
}
println()
listOf("hello", "Kotlin", "world").mapIndexed { index, item ->
println("$index:$item")
}
}

4、runningFold() 集合元素累加计算 的初始值
fun main(args: Array<String>) {
val numbers = mutableListOf(0, 1, 2, 3, 4, 5)
val runningFoldSum = numbers.runningFold(10) { sum, item -> sum + item }
println(runningFoldSum)
}

解释:10 可以理解为集合头部、新添加了一个元素10

注意打印集合长度比原有的多了一位!
数组
1、
fun main(args: Array<String>) {
val letters = arrayOf("k", "o", "t", "l", "i", "n")
val letters1 = arrayOf(1,2,3,4,6,5)
letters.onEach {
print(it)
}
println()
letters.shuffle()//随机
println("shuffle:${letters.contentToString()}")
letters.reverse(0, 3)//范围反转
println("reverse:${letters.contentToString()}")
letters1.sortDescending()//将数组降序排列
println("sortDescending:${letters1.contentToString()}")
letters1.sort()//将数组降升序序排列
println("sort:${letters1.contentToString()}")
}
结果:
2、这个叼-ArrayDeque 类似于List集合、官方大致理解:双端队列、既可以操作集合头尾部数据!
fun main(args: Array<String>) {
val deque = ArrayDeque(listOf(1, 2, 3))
deque.addFirst(0)
deque.addLast(4)
println(deque) // [0, 1, 2, 3, 4]
println(deque.first()) // 0
println(deque.last()) // 4
deque.removeFirst()
deque.removeLast()
println(deque) // [1, 2, 3]
}

1136

被折叠的 条评论
为什么被折叠?



