Skip to content

加减操作符

在 Kotlin 中,为集合定义了 plus (+) 和 minus (-) 操作符。 它们将一个集合作为第一个操作数;第二个操作数可以是元素或另一个集合。 返回值为一个新的只读集合:

  • plus 的结果包含原始集合以及第二个操作数中的元素。
  • minus 的结果包含原始集合中的元素,但不包含第二个操作数中的元素。 如果它是一个元素,minus 会移除其首次出现项;如果它是一个集合,则会移除其元素中的所有出现项。
kotlin

fun main() {
    val numbers = listOf("one", "two", "three", "four")

    val plusList = numbers + "five"
    val minusList = numbers - listOf("three", "four")
    println(plusList)
    println(minusList)
}

关于 Map 的 plusminus 操作符的详情,请参见 Map 特有的操作。 增广赋值操作符 plusAssign (+=) 和 minusAssign (-=) 也为集合定义了。然而,对于只读集合,它们实际上会使用 plusminus 操作符,并尝试将结果赋值给同一个变量。因此,它们仅适用于 var 声明的只读集合。 对于可变集合,如果集合是 val 声明的,它们会修改集合。更多详情请参见 集合写入操作