メインコンテンツまでスキップ

プラスとマイナスの演算子

Kotlin では、plus (+) と minus (-) 演算子はコレクションに対して定義されています。 これらの演算子は、最初のオペランドとしてコレクションを取り、2 番目のオペランドには要素または別のコレクションを指定できます。 戻り値は、新しい読み取り専用コレクションです。

  • plus の結果には、元のコレクションの要素 2 番目のオペランドの要素が含まれます。
  • minus の結果には、元のコレクションの要素のうち、2 番目のオペランドの要素 以外の 要素が含まれます。 要素の場合、minus は最初に現れた要素を削除します。コレクションの場合、その要素の すべての 出現が削除されます。

fun main() {

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

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

}

マップに対する plus および minus 演算子の詳細については、Map specific operations を参照してください。 拡張代入演算子 plusAssign (+=) と minusAssign (-=) もコレクションに対して定義されています。 ただし、読み取り専用コレクションの場合、実際には plus または minus 演算子を使用し、結果を同じ変数に代入しようとします。 したがって、これらは var の読み取り専用コレクションでのみ使用できます。 ミュータブルなコレクションの場合、val であればコレクションが変更されます。詳細については、Collection write operations を参照してください。