Junior — Middle
Ma'lumotlar sinfidagi qaysi funksiyalar yoki metodlar asosiy operatsiyalarni avtomatik ravishda qayta yozadi?
sobes.tech AI
AIdan javob
Kotlin'da data kalit so'zi bilan sinf e'lon qilganda, quyidagi metodlar avtomatik tarzda qayta yoziladi:
equals()— ob'ektlarni ularning xususiyatlarining qiymati bo'yicha solishtirish uchun.hashCode()— hash kolleksiyalar bilan to'g'ri ishlash uchun.toString()— ob'ektning qulay satr taqdimoti uchun.copy()— ob'ektning nusxasini yaratish uchun, ba'zi xususiyatlarni o'zgartirish imkoniyati bilan.componentN()funksiyalari — ob'ektni xususiyatlar bo'yicha destruktur qilish uchun.
Misol:
data class User(val name: String, val age: Int)
val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Alice, age=30)
println(user1 == user2) // false
val (name, age) = user1
println(name) // Alice