Cómo determinar si una lista de cadenas contiene elementos nulos o vacíos

En Java, tengo el siguiente método:

public String normalizeList(List<String> keys) {
    // ...
}

Quiero comprobar esokeys:

No esnull&nbsp;sí mismo; yNo está vacío (size() == 0); yNo tiene ningunString&nbsp;elementos que sonnull; yNo tiene ningunString&nbsp;Elementos que están vacíos ("")

Este es un método de utilidad que irá en un JAR estilo "comunes" (la clase será algo así comoDataUtils). Esto es lo que tengo, pero creo que es incorrecto:

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 2 últimos cheques parakeys.contains(null)&nbsp;ykeys.contains("")&nbsp;Son incorrectos y probablemente lanzarán excepciones de tiempo de ejecución.Sé que puedo recorrer la lista dentro de laif&nbsp;declaración, y compruebe si hay nulos / vacíos allí, pero estoy buscando una solución más elegante si existe.