[kotlin] apply() 함수를 사용하여 객체에 속성 할당하기

Kotlin에서 apply() 함수는 객체를 변경하지 않고 객체의 속성에 값들을 할당할 때 유용합니다. apply() 함수는 객체 자체를 반환해주기 때문에 여러 속성에 대해 연이어 작업을 수행하기에 편리합니다.

data class Person(var name: String, var age: Int)

fun main() {
    val person = Person("Alice", 25)
    
    val modifiedPerson = person.apply {
        age = 30
    }
    
    println("Original Person: $person")  // 출력: Original Person: Person(name=Alice, age=30)
    println("Modified Person: $modifiedPerson")  // 출력: Modified Person: Person(name=Alice, age=30)
}

위의 예제에서 apply() 함수를 사용하여 person 객체의 age 속성에 30이라는 새로운 값을 할당하였습니다. 이때, apply() 함수는 원본 객체를 변경하지 않으면서 age 속성을 수정한 modifiedPerson 객체를 생성합니다.

apply() 함수를 사용하면 여러 속성을 한꺼번에 수정할 수 있어 코드의 가독성을 높일 수 있으며, 객체 초기화 과정이 복잡한 경우에도 유용하게 사용할 수 있습니다.

결론

Kotlin에서 apply() 함수는 객체의 속성을 변경할 때 유용한 함수로, 기존 객체 변경 없이 속성을 일괄적으로 수정할 수 있습니다.

참조: Kotlin 공식 문서