chunked
所在位置是kotlin.sequences.chunked
,其相关用法介绍如下。
用法一
将此序列拆分为一系列列表,每个列表不超过给定的 size 。
结果序列中的最后一个列表的元素可能少于给定的 size 。
例子:
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val words = "one two three four five six seven eight nine ten".split(' ')
val chunks = words.chunked(3)
println(chunks) // [[one, two, three], [four, five, six], [seven, eight, nine], [ten]]
//sampleEnd
}
输出:
[[one, two, three], [four, five, six], [seven, eight, nine], [ten]]
参数
每个列表中要获取的元素数必须为正数,并且可以大于此序列中的元素数。
操作是 intermediate
和 stateful
。
用法二
将此序列拆分为多个列表,每个列表不超过给定的size,并将给定的transform 函数应用于每个列表。
例子:
import java.util.Locale
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val codonTable = mapOf("ATT" to "Isoleucine", "CAA" to "Glutamine", "CGC" to "Arginine", "GGC" to "Glycine")
val dnaFragment = "ATTCGCGGCCGCCAA"
val proteins = dnaFragment.chunked(3) { codon: CharSequence -> codonTable[codon.toString()] ?: error("Unknown codon") }
println(proteins) // [Isoleucine, Arginine, Glycine, Arginine, Glutamine]
//sampleEnd
}
输出:
[Isoleucine, Arginine, Glycine, Arginine, Glutamine]
参数
每个列表中要获取的元素数必须为正数,并且可以大于此序列中的元素数。
操作是 intermediate
和 stateful
。
返回
transform 的结果序列应用于每个列表。
请注意,传递给transform 函数的列表是短暂的,仅在该函数内部有效。您不应该存储它或让它以某种方式逃逸,除非您制作了它的快照。最后一个列表的元素可能比给定的 size 少。
相关用法
- Kotlin chunkedSequence用法及代码示例
- Kotlin contentToString用法及代码示例
- Kotlin commonPrefixWith用法及代码示例
- Kotlin containsAll用法及代码示例
- Kotlin capitalize用法及代码示例
- Kotlin code用法及代码示例
- Kotlin copyOf用法及代码示例
- Kotlin component2用法及代码示例
- Kotlin coerceIn用法及代码示例
- Kotlin coerceAtMost用法及代码示例
- Kotlin contains用法及代码示例
- Kotlin coerceAtLeast用法及代码示例
- Kotlin commonSuffixWith用法及代码示例
- Kotlin containsValue用法及代码示例
- Kotlin component1用法及代码示例
- Kotlin contentEquals用法及代码示例
- Kotlin associateBy用法及代码示例
- Kotlin all用法及代码示例
- Kotlin map用法及代码示例
- Kotlin filterNot用法及代码示例
- Kotlin reduceRight用法及代码示例
- Kotlin Random.Default用法及代码示例
- Kotlin Byte.inc用法及代码示例
- Kotlin getValue用法及代码示例
- Kotlin Double.dec用法及代码示例
注:本文由纯净天空筛选整理自kotlinlang.org大神的英文原创作品 kotlin.sequences.chunked。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。