Kotlin Returning Null не может быть значением ненулевого типа - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь вернуть нулевое значение для функции Kotlin.Это дает мне ошибку Null cannot be a value of a non-null type.Но я хочу иметь возможность вернуть ноль.Несмотря на то, что функция выглядит недействительной, это переопределение интерфейса, и в этом случае возвращаемое значение отсутствует.

override fun call(jso: JSONObject): JSONObject {
    ...
    ...
    return null
}

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

1 Ответ

5 голосов
/ 01 апреля 2019

Вы должны поставить ? после типа возврата:

override fun call(jso: JSONObject): JSONObject? {
    ...
    return null
}

Поскольку у вас есть модификатор override, вам также необходимо изменить тип возврата метода суперкласса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...