- Kotlin 教程
- Kotlin - 首頁
- Kotlin - 概述
- Kotlin - 環境搭建
- Kotlin - 架構
- Kotlin - 基本語法
- Kotlin - 註釋
- Kotlin - 關鍵字
- Kotlin - 變數
- Kotlin - 資料型別
- Kotlin - 運算子
- Kotlin - 布林值
- Kotlin - 字串
- Kotlin - 陣列
- Kotlin - 範圍
- Kotlin - 函式
- Kotlin 控制流
- Kotlin - 控制流
- Kotlin - if...else 表示式
- Kotlin - when 表示式
- Kotlin - for 迴圈
- Kotlin - while 迴圈
- Kotlin - break 和 continue
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集合
- Kotlin - 對映
- Kotlin 物件和類
- Kotlin - 類和物件
- Kotlin - 建構函式
- Kotlin - 繼承
- Kotlin - 抽象類
- Kotlin - 介面
- Kotlin - 可見性控制
- Kotlin - 擴充套件
- Kotlin - 資料類
- Kotlin - 密封類
- Kotlin - 泛型
- Kotlin - 代理
- Kotlin - 解構宣告
- Kotlin - 異常處理
- Kotlin 有用資源
- Kotlin - 快速指南
- Kotlin - 有用資源
- Kotlin - 討論
Kotlin 陣列 - joinToString() 函式
Kotlin 陣列的 joinToString() 函式可以根據指定的分割符、字首、字尾和轉換函式,將陣列(或任何集合)轉換為字串。
此函式允許對如何將元素連線到單個字串進行廣泛的自定義。
如果集合可能很大,可以為 limit 引數指定一個非負值。在這種情況下,只有前 limit 個元素將被追加,後面跟著截斷字串(預設為“...”)。
語法
以下是 Kotlin 陣列 joinToString() 函式的語法:
fun <T> Array<out T>.joinToString(
separator: CharSequence = ", ",
prefix: CharSequence = "",
postfix: CharSequence = "",
limit: Int = -1,
truncated: CharSequence = "...",
transform: ((T) -> CharSequence)? = null
): String
引數
此函式接受以下引數,但並非所有引數都是必需的。
buffer:表示需要將結果追加到的 Appendable。
separator:表示元素之間的分隔符。預設為 ", "。
prefix:表示將在第一個元素之前新增的字串。預設為空字串 ""。
postfix:表示將在最後一個元素之後新增的字串。預設為空字串 ""。
limit:表示要追加的最大元素數量。如果還有更多元素,則將在 limit 之後追加截斷字串。預設為 -1,表示沒有限制。
truncated:當達到 limit 時要追加的字串。預設為 "...".
transform:這是一個將應用於每個元素的函式,在將其追加到緩衝區之前對其進行轉換。
返回值
此函式返回一個字串,其中包含此序列中的字元,順序與陣列或集合序列相同。
示例 1
以下是一個基本的示例,演示 joinToString() 函式的用法:
fun main(args: Array<String>) {
val numbers = arrayOf(1, 2, 3, 4, 5)
println(numbers.joinToString())
}
輸出
以下是輸出:
1, 2, 3, 4, 5
示例 2
以下是一個其他的示例。在這裡,我們使用 joinToString 函式以及引數:separator、prefix 和 postfix:
fun main(args: Array<String>) {
val numbers = listOf(1, 2, 3, 4, 5, 6)
//scenario second
println(numbers.joinToString(prefix = "{ ", postfix = " }", separator = " < "))
}
輸出
執行上述程式碼後,我們將得到以下輸出:
{ 1 < 2 < 3 < 4 < 5 < 6 }
示例 3
下面的示例構建一個字串並將數字追加到字串中。然後,我們使用 joinToString() 函式將數字轉換為字串:
fun main(args: Array<String>) {
val sb = StringBuilder("tutorials point: ")
sb.append("India\n")
val lotOfNumbers: Iterable<Int> = 1..100
sb.append("First 8 numbers: ")
// Use joinToString and appends its result to the StringBuilder
val numbersString = lotOfNumbers.joinToString(limit = 8, separator = ":")
sb.append(numbersString)
println(sb.toString())
}
輸出
執行上述程式碼後,我們將得到以下輸出:
tutorials point: India First 8 numbers: 1:2:3:4:5:6:7:8:...
kotlin_arrays.htm
廣告