Edit Page

加法(Plus) 和 减法(Minus) 操作符

最终更新: 2024/03/21

在 Kotlin 中, 也为集合定义了 加法(Plus) (+) 和 减法(Minus) (-) 操作符. 这些操作符使用一个集合作为第一个操作数; 第二个操作数可以是单个元素, 也可以是另一个集合. 返回值是一个新的只读集合:

  • 加法(Plus) 的返回值包含原来集合中的元素 第二个操作数的元素.
  • 减法(Minus) 的返回值包含原来集合中的元素, 但要 除去 第二个操作数的元素. 如果第二个操作数是单个元素, 减法(Minus) 只删除原来的集合中 第一次 出现的这个元素; 如果第二个操作数是一个集合, 那么原来的集合中 所有 出现的这些元素都会被删除.

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

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

关于 map 的 加法(Plus)减法(Minus) 操作的详情, 请参见 Map 相关操作. 对于集合, 也定义了 计算并赋值操作符 加然后赋值(plusAssign) (+=) 和 减然后赋值(minusAssign) (-=). 但是, 对于只读集合, 这些操作符实际上会使用 加法(Plus)减法(Minus) 操作符, 然后将结果重新赋值给同一个变量. 因此, 如果集合是只读的, 那么这些操作符只能用于 var 类型的变量. 对于可变的集合, 如果是 val 类型的变量, 那么这些操作符会修改集合内容. 详情请参见 集合写入操作.