Я использую код ниже -
editText.text.toString().isNullOrEmpty()
и получаю предупреждение ниже lint-
Звонок на ненулевой тип может быть уменьшен
Когда я щелкаю правой кнопкой мыши предупреждение lint, он говорит -
Изменить вызов на isEmpty
Когда я проверяю код -
@Nullable public Editable getText() {
if (Build.VERSION.SDK_INT >= 28) {
return super.getText();
}
// A bug pre-P makes getText() crash if called before the first setText due to a cast, so
// retrieve the editable text.
return super.getEditableText();
}
, чтоозначает, что editText.text
обнуляется
/**
* Returns a string representation of the object. Can be called with a null receiver, in which case
* it returns the string "null".
*/
public fun Any?.toString(): String
, что означает, что toString()
может возвращать ноль
Тогда как ediText.text.toString().isEmpty()
является лучшим вариантом, поскольку он может генерировать исключение нулевого указателя?