Como determinar se uma lista de string contém elementos nulos ou vazios

Em Java, tenho o seguinte método:

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

Eu quero verificar issokeys:

Não énull em si; eNão está vazio (size() == 0); eNão tem nenhumString elementos que sãonull; eNão tem nenhumString elementos que estão vazios ("")

Este é um método utilitário que irá em um estilo JAR "comum" (a classe será algo comoDataUtils). Aqui está o que eu tenho, mas acredito que é incorreto:

public String normalize(List<String> keys) {
    if(keys == null || keys.size() == 0 || keys.contains(null) || keys.contains(""))
        throw new IllegalArgumentException("Bad!");

    // Rest of method...
}

Eu acredito que os últimos 2 cheques parakeys.contains(null) ekeys.contains("") estão incorretas e provavelmente lançarão exceções de tempo de execução.Eu sei que posso apenas percorrer a lista dentro doif declaração, e verifique se há nulos / vazios lá, mas estou procurando uma solução mais elegante, se existir.

questionAnswers(6)

yourAnswerToTheQuestion