Kotlinリスト(List)をSetに変換する

List.toSet()

List.toSet()関数を使うと、ListをSetに変換できる。

fun main() {
    val list = listOf(1, 2, 3, 4, 5)

    val set = list.toSet()

    println(set)
}

Output:

[1, 2, 3, 4, 5]

MutableList.toMutableSet()

List.toMutableSet()関数を使うと、要素を追加できるSetを返す。次の例では、setadd()関数を使って要素を追加している。

fun main() {
    val list = mutableListOf(1, 2, 3, 4, 5)

    val set = list.toMutableSet()
    set.add(6)

    println(set)
}

Output:

[1, 2, 3, 4, 5, 6]

HashSet()

HashSet()コンストラクター関数にlistを渡して、Setに変換することもできる。

fun main() {
    val list = listOf(1, 2, 3, 4, 5)

    val set = HashSet(list)

    println(set)
}

Output:

[1, 2, 3, 4, 5]

Set.addAll()

MutableSetとして宣言したsetに、addAll()関数でlistの要素を追加することもできる。

fun main() {
    val list = listOf(1, 2, 3, 4, 5)

    val set: MutableSet<Int> = HashSet()
    set.addAll(list)

    println(set)
}

Output:

[1, 2, 3, 4, 5]

参照