Один шаг проверки нулевого значения и пустоты строки

У меня есть метод setter.

Затем, когда запускается другой (например, сгенерированный) метод, мне нужно проверить значение моих полей. Поэтому в случае свойства String мне нужно знать, содержит ли оно значение или если оно не было установлено. Так что это может быть нулевое значение "или что-то значимое, есть три возможности. И довольно скучно сначала проверять нулевое значение:

if (s != null)

то для пустой строки

if (!s.isEmpty())

есть одноэтапная проверка здесь? Вы можете сказать мне, что я могу инициализировать мое поле String пустой String. [ЭТО ОБЩИЙ? ] Но что, если кто-то передает нулевое значение методу setter setS? так что мы всегда должны проверить, имеет ли значение Object значение null или нет, прежде чем что-то делать с этим объектом?

Ну, да, метод setter может проверить его значения, а также метод getter может возвращать ненулевое значение, если поле равно null. Но это единственное решение? Это слишком много работает в геттерах и сеттерах для программиста!

Ответ 1

Библиотека Commons, StringUtils.isBlank() или StringUtils.isEmtpy().

isEmpty эквивалентно

s == null || s.length() == 0

isBlank эквивалентно

s == null || s.trim().length() == 0

Ответ 2

if(s != null && !s.isEmpty()){
// this will work even if 's' is NULL
}

Ответ 3

В jakarta commons есть StringUtils.isEmpty(String).

Ответ 4

используйте org.apache.commons.lang.StringUtils, метод StringUtils.isNotBlank проверяет как недействительность, так и пустоту.

Ответ 5

Добавьте зависимость maven для com.google.guava

Тогда в вашем коде:

import com.google.common.base.Strings;

if(!Strings.isNullOrEmpty(s)) {
  // Do stuff here
}

Ответ 6

попробуйте это

if (s) {

}