kotlin Listの要素を区切りを指定して文字列に置換する

kotlin Listの要素を区切りを指定して文字列に置換する

kotlinで、Listの要素を区切りを指定して文字列に置換する手順を記述してます。「joinToString」を使用します。

環境

  • OS windows11 home
  • java 19.0.1
  • kotlin 1.7.20-release-201

手順

kotlinListの要素を区切りを指定して文字列に置換するには、「joinToString」で可能です。
引数に何も指定しなければ「カンマ」区切りで、「separator」に指定した値が区切り文字となります。

List名.joinToString(separator="区切り文字")

実際に、使用してみます。

fun main() {
    
    val list = listOf("kotlin","java","html","php","java")

    println(list.joinToString())
    // kotlin, java, html, php, java

    println(list.joinToString(separator = "___"))
    // kotlin___java___html___php___java

    println(list.joinToString(
    separator = "-",
    prefix = "{",
    postfix = "}",
    limit = 2,
    truncated = "xxx",
    transform = { "${it.toUpperCase()}" }))
    // {KOTLIN-JAVA-xxx}

    println(list) // [kotlin, java, html, php, java]

}

指定した区切り文字で文字列に変換されていることが確認できます。

mutableList

「mutableList」にも使用可能です。

fun main() {
    
    val list = mutableListOf("kotlin","java","html","php","java")

    println(list.joinToString())
    // kotlin, java, html, php, java

    println(list.joinToString(separator = "- - -"))
    // kotlin- - -java- - -html- - -php- - -java

    println(list.joinToString(
    separator = ".",
    prefix = "*",
    postfix = "*",
    limit = 3,
    truncated = "xxx",
    transform = { "${it.uppercase()}" }))
    // *KOTLIN.JAVA.HTML.xxx*

    println(list) // [kotlin, java, html, php, java]

}