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