Junior — Middle
Dasturlash tilida data class foydalanish qanday operatsiyalar va imkoniyatlar taqdim etadi?
sobes.tech AI
AIdan javob
Kotlin'da ma'lumotlar sinfi — bu ma'lumotlarni saqlash uchun mo'ljallangan maxsus sinf. data kalit so'zi bilan sinf e'lon qilinganda, kompilyator avtomatik ravishda bir nechta foydali metodlarni yaratadi:
equals()vahashCode()— ob'ektlarni qiymat bo'yicha, havola emas, solishtirish uchun.toString()— ob'ekt mazmunini qulay tarzda chiqarish uchun.copy()— ob'ektning nusxasini yaratish, ba'zi xususiyatlarni o'zgartirish imkoniyati bilan.componentN()funksiyalari — ob'ektni destruktur qilish uchun.
Misol:
data class User(val name: String, val age: Int)
fun main() {
val user1 = User("Ivan", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Ivan, age=30)
println(user2) // User(name=Ivan, age=31)
val (name, age) = user1
println("Ism: $name, Yoshi: $age")
}
Shu tarzda, ma'lumotlar sinfi, asosan ma'lumotlarni o'z ichiga olgan ob'ektlar bilan ishlashni soddalashtiradi va takroriy kod miqdorini kamaytiradi.