joinToString所在位置是kotlin.sequences.joinToString,其相關用法介紹如下。

用法:

fun <T> Sequence<T>.joinToString(
    separator: CharSequence = ", ", 
    prefix: CharSequence = "", 
    postfix: CharSequence = "", 
    limit: Int = -1, 
    truncated: CharSequence = "...", 
    transform: ((T) -> CharSequence)? = null
): String

從使用separator 分隔的所有元素創建一個字符串,並使用給定的prefixpostfix(如果提供)。

如果集合可能很大,您可以指定一個非負值 limit ,在這種情況下,隻會附加第一個 limit 元素,然後是 truncated 字符串(默認為 "...")。

操作是 terminal

例子:

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val numbers = listOf(1, 2, 3, 4, 5, 6)
println(numbers.joinToString()) // 1, 2, 3, 4, 5, 6
println(numbers.joinToString(prefix = "[", postfix = "]")) // [1, 2, 3, 4, 5, 6]
println(numbers.joinToString(prefix = "<", postfix = ">", separator = "•")) // <1•2•3•4•5•6>

val chars = charArrayOf('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q')
println(chars.joinToString(limit = 5, truncated = "...!") { it.uppercaseChar().toString() }) // A, B, C, D, E, ...!
//sampleEnd
}

輸出:

1, 2, 3, 4, 5, 6
[1, 2, 3, 4, 5, 6]
<1•2•3•4•5•6>
A, B, C, D, E, ...!