chunked
Начиная с Kotlin: 1.2
fun CharSequence.chunked(size: Int): List<String>
Разбивает эту символьную последовательность на список строк, каждая из которых не превышает указанное значение size.
Последняя строка в результирующем списке может содержать меньше символов, чем указанное значение size.
Параметры
количество элементов, которые нужно взять в каждую строку; должно быть положительным и может превышать количество элементов в этой символьной последовательности.
Примеры
import kotlin.test.*
fun main() {
//sampleStart
val dnaFragment = "ATTCGCGGCCGCCAA"
val codons = dnaFragment.chunked(3)
println(codons) // [ATT, CGC, GGC, CGC, CAA]
//sampleEnd
}
fun <R> CharSequence.chunked(size: Int, transform: (CharSequence) -> R): List<R>
Разбивает эту символьную последовательность на несколько символьных последовательностей, каждая из которых не превышает указанное значение size, и применяет к каждой из них указанную функцию transform.
Возвращает
список результатов применения transform к каждой символьной последовательности.
Обратите внимание, что символьная последовательность, передаваемая функции transform, является временной и действительна только внутри этой функции. Не следует сохранять её или каким-либо образом использовать за пределами функции, если только вы не создали её копию. Последняя символьная последовательность может содержать меньше символов, чем указанное значение size.
Параметры
количество элементов, которые нужно взять в каждую символьную последовательность; должно быть положительным и может превышать количество элементов в этой символьной последовательности.
Примеры
import kotlin.test.*
fun main() {
//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
}
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.text/chunked.html