Sobes.tech
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 менен байланышкан классикалык каталарды алдын алууга жардам берет жана кодду ишенимдүү кылат.