kotlin Listから指定したListと同じ要素のみを抽出する

kotlin Listから指定したListと同じ要素のみを抽出する

kotlinで、Listの要素をkeyにしListから指定したListと同じ要素のみを抽出する手順を記述してます。「intersect」を使用します。

環境

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

手順

kotlin、Listから指定したListと同じ要素のみを抽出するには、「intersect」で可能です。

List名.intersect(List)

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

fun main() {

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

    println(list.intersect(listOf("java","html")))
    // [java, html]

    println(list.intersect(listOf("java","css")))
    // [java]

    println(list.intersect(listOf("vue","css")))
    // []

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

}

重複は除かれて取得されていることが確認できます。また、存在しなければ空のListが返ります。

mutableList

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

fun main() {

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

    println(list.intersect(listOf("java","html")))
    // [java, html]

    println(list.intersect(listOf("java","css")))
    // [java]

    println(list.intersect(listOf("vue","css")))
    // []

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

}