Как установить значение null для параметров функции в kotlin

Я создаю одну функцию в Kotlin . Он проверяет поля электронной почты и пароля. Я хочу применить электронную почту и пароль не должен быть нулевым. @NotNull любопытная аннотация здесь.

Кто-нибудь знает, как это сделать в Kotlin ? Таким образом, вызывающий абонент не может отправить нулевое значение.

 private fun isEmailAndPasswordValid(email: String, password: String): Boolean { if (email.isEmpty()) return false if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()) return false if (password.isEmpty()) return false return true } 

Котлин дифференцирует все типы с помощью nullable и not-nullable . Например, класс String может использоваться для типа String , который не является NULL, а тип String? , который имеет значение NULL, т. е. может иметь значение null .

В вашем примере не используются типы с нулевым значением, поэтому вы все в порядке – дополнительной аннотации не требуется.

Документация должна быть изучена для получения дополнительной информации.

У Котлина есть своя нулевая безопасность. String является непустым типом, а String? является нулевым типом. Итак, isEmailAndPasswordValid(email: String, password: String) будет принудительно исполнять значение, переданное ему, не имеет значения null.

Язык Kotlin по умолчанию является нулевым, поэтому при создании новой переменной он не может быть нулевым, но если вы хотите, чтобы нулевая переменная вы можете добавить восклицательный знак, чтобы указать, что он может быть пустым для примера String ?, Int? …

Неверный

 var a: String = "bachiri" a = null // compilation error 

Nullable Type

 var a: String? = "bachiri" a = null // OK 

и в виду, если вы хотите вызвать функцию в NULL-Type, вы должны использовать истребитель для проверки нулевой переменной (1) или использовать безопасные вызовы (2)

Когда я проверяю документацию Kotlin, я вижу, что переменная String не может быть установлена ​​в значение null, если вы не объявите ее, и ваш компилятор вызовет ошибку.

Например, регулярная переменная типа String не может содержать нуль

https://kotlinlang.org/docs/reference/null-safety.html