더하기 및 빼기 연산자
Kotlin에서 plus (+) 및 minus (-) 연산자는 컬렉션을 위해 정의되어 있습니다. 이들은 첫 번째 피연산자로 컬렉션을 받으며, 두 번째 피연산자는 요소 하나이거나 다른 컬렉션일 수 있습니다. 반환 값은 새로운 읽기 전용(read-only) 컬렉션입니다:
plus의 결과는 원본 컬렉션의 요소와 두 번째 피연산자의 요소를 모두 포함합니다.minus의 결과는 두 번째 피연산자의 요소를 제외한 원본 컬렉션의 요소를 포함합니다. 두 번째 피연산자가 요소인 경우,minus는 해당 요소의 첫 번째 항목(occurrence)을 제거합니다. 컬렉션인 경우, 해당 컬렉션 요소의 모든 항목이 제거됩니다.
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)에 대한 plus 및 minus 연산자의 자세한 내용은 Map specific operations를 참고하세요. 복합 대입 연산자(augmented assignment operators)인 plusAssign (+=) 및 minusAssign (-=) 또한 컬렉션에 대해 정의되어 있습니다. 그러나 읽기 전용 컬렉션의 경우, 이들은 실제로 plus 또는 minus 연산자를 사용하고 그 결과를 동일한 변수에 할당하려고 시도합니다. 따라서 이들은 var로 선언된 읽기 전용 컬렉션에서만 사용할 수 있습니다. 가변(mutable) 컬렉션의 경우, 변수가 val이더라도 컬렉션 자체를 수정합니다. 자세한 내용은 Collection write operations를 참고하세요.
