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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。