Junior — Middle
Dasturlash tilida turni tasdiqlash (Type Assertion) ishlatiladigan holatlarning misollarini keltira olasizmi?
sobes.tech AI
AIdan javob
Go tilida, Tip Assertion (Type Assertion) interfeys qiymatidan aniq bir turni olish uchun ishlatiladi. Bu, interface{} turidagi o'zgaruvchiga ega bo'lsangiz va uning ichida ishlashni istagan aniq tur bo'lsa, foydalidir.
Foydalanish misollari:
- Interfeysdan aniq turni olish va maxsus metodlarni chaqirish.
- Interfeysni qaytaradigan funksiyalardan qaytgan qiymatlarni ishlash.
- O'zgaruvchi ma'lum bir turni amalga oshirayotganligini tekshirish va mos logikani bajarish.
Kod misoli:
var i interface{} = "salom"
// Tipni tekshirish bilan rzutlash
s, ok := i.(string)
if ok {
fmt.Println("String:", s)
} else {
fmt.Println("String emas")
}
Agar tekshirmasdan rzutlashni amalga oshirsangiz va tur mos kelmasa, dastur panik qiladi.