en Java, tengo el siguiente método:cómo determinar si una lista de cadena contiene elementos nulos o vacíos
public String normalizeList(List<String> keys) {
// ...
}
Quiero comprobar que keys
:
- No es
null
sí; y - No está vacío (
size() == 0
); y - No tiene
String
elementos que sonnull
; y - no tiene ningún
String
elementos que son vacía ("")
Este es un método de utilidad que va a ir en un "bien común" al estilo de JAR (la clase Wil ser algo así como DataUtils
). Aquí es lo que tengo, pero creo que su incorrecta:
public String normalize(List<String> keys) {
if(keys == null || keys.size() == 0 || keys.contains(null) || keys.contains(""))
throw new IllegalArgumentException("Bad!");
// Rest of method...
}
Creo que los últimos 2 cheques por keys.contains(null)
y keys.contains("")
son incorrectas y es probable que producen excepciones de tiempo de ejecución. Sé que puedo recorrer la lista dentro de la declaración if
, y verificar si hay vacíos/nulos allí, pero estoy buscando una solución más elegante si existe.
* "Creo que los últimos 2 cheques para keys.contains (null) y keys.contains (" ") son incorrectas y es probable que el tiempo de ejecución lanzado excepciones. "*: ¿Por qué? ¿Qué excepción esperas? – assylias
keys.contains (null) estará bien, pero keys.contains ("") solo funcionará en ciertas situaciones, pero no debe lanzar una excepción. –
Hombre, tiene demasiados nulos volando alrededor de su aplicación ... –