Junior — Middle
Kotlin тилинде null менен иштөө коопсуздуулук концепциясын жана ал кандай ишке ашырылганын түшүндүрүңүз.
sobes.tech AI
AIден жооп
Kotlin-де null менен иштөө концепциясы nullable жана non-nullable түрлөрдү колдоочу типтер системасы аркылуу ишке ашырылган.
- Дефолт боюнча, өзгөрмөлөр
nullкамтыша албайт. Мисалы,var a: String = "текст"nullболбойт. nullуруксат берүү үчүн, түрү?менен жарыяланат, мисалы,var b: String? = null.
Nullable түрлөр менен иштөө үчүн Kotlin төмөнкүлөрдү камсыздайт:
- Коопсуз чакыруу оператору
?.— объектnullэмес болсо, методду чакыруу же мүнөздөмөгө кирүү мүмкүнчүлүгүн берет, эгер андай болбосо,nullкайтарат. - Элвис оператору
?:— сол жактагы билдирүүnullболсо, алдын ала белгиленген маанини орнотот. !!эмес- null деп ырастоо оператору — nullable түрүн күч менен non-nullable кылат, эгер маанисиnullболсо, исключение чыгарат.
Мисал:
val name: String? = null
println(name?.length) // null чыгарат, ката кылбайт
println(name?.length ?: 0) // 0 чыгарат
println(name!!.length) // NullPointerException чыгарат
Мындай жол менен, Kotlin null менен байланышкан классикалык каталарды алдын алууга жардам берет жана кодду ишенимдүү кылат.