Ответ
Метод copy() в Kotlin автоматически генерируется для data class и позволяет создавать копию объекта с возможностью изменения отдельных свойств. Это полезно для иммутабельных объектов.
Пример:
data class User(val name: String, val age: Int)
val user1 = User("Alex", 30)
val user2 = user1.copy(age = 31) // Создаст копию с изменённым age
Особенности:
- Не изменяет оригинальный объект
- Можно изменить любое количество полей
- Поля, которые не указаны, сохраняют значения оригинала
- Работает только с
valсвойствами (изменениеvarсвойств в копии не отразится на оригинале)