Как я могу объявить нулевой массив в Котлине?

У меня есть следующий код на PHP public static $bitValueTable = null;, и я хочу преобразовать его в Kotlin. Моя переменная представляет собой нулевой массив на первом этапе, но я добавляю некоторое значение после запуска программы. как я могу преобразовать?

Зачем вам нужен массив null? Вероятно, ваш код можно было бы переписать таким образом, чтобы он вам не нужен, возможно, используя пустой массив или отложив создание переменной до тех пор, пока у вас не будет значения.

user2340612 26.05.2019 15:13

Я пытаюсь преобразовать один проект PHP в Kotlin, и я хочу, чтобы в обоих было все одинаково. этот массив зависит от пользователей и используется в нескольких местах, поэтому я не знаю, когда он создается.

saeed-pasa 26.05.2019 21:55
1
2
2 108
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

По умолчанию любая переменная в kotlin не может содержать нулевые значения, но тем не менее вы можете создать объект, допускающий значение null, с помощью оператора ?, для лучшего понимания проверьте ниже url
https://kotlinlang.org/docs/reference/null-safety.html.
Итак, чтобы создать массив с нулевым значением, используйте синтаксис ниже

var myTypeArray: Array<type>? = null // check below example
var myStrArray: Array<String>? = null

Документация по массивам Kotlin

Спасибо

спасибо за ответ, но есть статическое ключевое слово. как я могу справиться с этим?

saeed-pasa 26.05.2019 21:56

Строго говоря, в Котлине нет статических членов. Вместо этого следует использовать сопутствующий объект.

majk 27.05.2019 11:28
Ответ принят как подходящий

В kotlin вы можете использовать объекты, допускающие значение NULL, с оператором безопасного вызова «?». Теперь у вас есть статическая переменная в PHP, в kotlin нет «статической» как таковой, однако объект-компаньон {} выполняет ту же функцию. Таким образом, эквивалент public static $bitValueTable = null; в котлине это: companion object { var bitValueTable : Array<Type>? = null }

Наблюдения:

  • Значение переменных по умолчанию в kotlin общедоступно.

Другие вопросы по теме