Tengo un método setter.Verificación en un paso para el valor nulo y el vacío de una cadena
Luego, cuando se ejecuta otro método (por ejemplo generar), necesito verificar el valor de mis campos. Entonces, en el caso de la propiedad String, necesito saber si contiene el valor o si no se configuró. Entonces puede ser nulo, "" o algo significativo, hay 3 posibilidades. y es bastante aburrido para comprobar primero por un valor nulo:
if (s != null)
luego por una cadena vacía
if (!s.isEmpty())
hay un cheque de un solo paso aquí? Puedes decirme que puedo inicializar mi campo String con un String vacío. [ ¿ES COMÚN? ] Pero, ¿y si alguien pasa un valor nulo al setter method setS? entonces, ¿siempre tenemos que verificar si el valor del Objeto es nulo o no antes de hacer algo con ese objeto?
Bueno, sí un método de selección puede comprobar que es valores y también un método getter puede devolver un valor no nulo si el campo es nulo. Pero, ¿es la única solución? ¡Es demasiado trabajo en getters & setters para que lo haga un programador!
Sí Biblioteca Apache. ¿Por qué, una vez más, no está en la distribución standart java? – EugeneP
algo en lo que pensar: null significa que no está configurado, "" significa configurado como vacío. – Pat
De acuerdo con Pat aquí. A veces parece que esto no es más que contabilidad innecesaria, pero son semánticamente diferentes. Si el miembro es nulo, significa "no tiene valor", mientras que una cadena vacía "tiene un valor, una cadena vacía". Es común que los métodos tengan un comportamiento diferente (por diseño) basado en este hecho. – charstar