Junior
Šta je 'inferencija tipa' u Kotlinu?
sobes.tech АИ
Одговор од АИ
Тип инференција је способност компајлера да одреди тип променљиве или израза без да развојни програмер то јасно наведе. Компајлер анализира контекст (на пример, почетну вредност) и аутоматски додељује одговарајући тип.
Примери:
// Инференција типа за var
var count = 10 // Компилатор одређује тип Int
// count = "hello" // Грешка при компилацији: не може се доделити String у Int
// Инференција типа за val
val name = "Kotlin" // Компилатор одређује тип String
// name = "Java" // Грешка при компилацији: val је неизменљив
// Инференција типа за изразе
val sum = 5 + 3.14 // Компилатор одређује тип Double
Предности:
- Скраћује количину кода, чинећи га читљивијим.
- Смањује вероватноћу грешака везаних за несагласност типова ако нису јасно наведени.
- Повећава продуктивност у развоју.
Важне тачке:
- Инференција типа је ограничена. У неким случајевима (нпр. декларација променљиве без иницијалне вредности) потребно је јасно навести тип.
- Променљиве које су декларативно објављене са
varмогу мењати вредност, али не и тип, након инференције.
var number: Int // Потребно је јасно навести тип јер нема иницијализације