Articles of ноль

null в listOf (), а не null в listOf (значение) в Kotlin в одном лайнере?

Пусть f() возвращает значение, равное нулю. Что я хочу сделать, так это то, что если f() равно null, получите пустой список, else, если f() не является нулевым, получите список значения одного элемента. В Scala мы можем сделать что-то вроде этого: Option(f()).toList или более словесно Option(f()).map(v => List(v)).getOrElse(List.empty) В Kotlin нет Option (если нет библиотеки Funktionale), […]

Почему интеллектуальное сканирование сбрасывается для значения NULL после установки значения и проверки, является ли оно нулевым?

Допустим, у меня есть следующий класс: class MyClass { private var username: String? = null private var projectName: String? = null private var buildNumber: Int = -1 private val presenter: Presenter = Presenter() fun present() { username = "" projectName = "" if (username != null && projectName != null && buildNumber != -1) { […]

Kotlin установлен в Null If Not Null

Есть ли в Котлине идиома для установки переменной в значение null, если она еще не равна нулю? Что-то более семантически приятное, чем: var test: String? = null if(test != null) test = null

Что значит ! означает значение возврата Котлина?

Я пытаюсь использовать результат Task который имеет тип Location! , Что это значит для того, как я должен обращаться с недействительностью? Может ли оно быть нулевым или нет? Я не мог найти такую ​​декларацию в разделе Null Safety kotlinlang.org .

Котлин с, если не нуль

Каким будет наиболее сжатый способ использования with iff var не null ? Лучшее, что я мог придумать, это: arg?.let { with(it) { }}

Компилятор Kotlin не может понять, что переменная не имеет значения NULL в цикле do-while

У меня есть следующий метод. Его логика очень проста, если задано правильное значение, тогда вызовите left, пока оно имеет значение (но не пустое). Когда я пишу его следующим образом, он работает. fun goNext(from: Node): Node? { var prev : Node = from var next : Node? = from.right if (next != null) { prev = […]

Kotlin null-safety для свойств класса

Как я могу избежать использования !! для дополнительных свойств класса class PostDetailsActivity { private var post: Post? = null fun test() { if (post != null) { postDetailsTitle.text = post.title // Error I have to still force using post!!.title postDetailsTitle.author = post.author Glide.with(this).load(post.featuredImage).into(postDetailsImage) } else { postDetailsTitle.text = "No title" postDetailsTitle.author = "Unknown author" Toast.makeText(this, […]