Pessoal,
O conteudo de variavel analisesContratadas esta retornando “[]”, atravez do debug.
e estou tentando fazer um if , só que não esta fazendo o Syst…
como eu faço para fazer essa comparação ??
if (analisesContratadas.equals("")) {
System.err.println("****analisecontratadas nulll**** ");
}
De que tipo é a variável analisesContratadas?
Se for um list, o certo seria testar com isEmpty(). Aliás, para String também, é bem melhor do que usar equals("").
É um array? Você pode verificar assimif(analisesContratadas == null || analisesContratadas.length == 0){
Assim verifica se está nulo, e se não estiver verifica se o array se encontra vazio.
é uma lista
coloquei assim : e funcionou
if (analisesContratadas == null || analisesContratadas.size() == 0) {
System.err.println("****analisecontratadas nulll**** ");
}
Bom, sendo uma lista, eu acho que o isEmpty() fica melhor, como o Vini sugeriu.
Só compare o tamanho com arrays, porque aí você não tem outra escolha
Melhor ficaria se fosse assim:
[code] if (analisesContratadas == null || analisesContratadas.isEmpty()) {
System.err.println("analisecontratadas nulll ");
}
[/code]
Eu também sempre achei interessante ter um método que verifica se algum objeto está vazio, seja ele qual for. Algo assim: public static boolean isEmpty(Object object) {
if (object == null) {
return true;
} else if (object instanceof CharSequence) {
return ((CharSequence) object).toString().trim().isEmpty();
} else if (object instanceof Character) {
return Character.isWhitespace((Character) object);
} else if (object instanceof Collection) {
return ((Collection<?>) object).isEmpty();
} else if (object.getClass().isArray()) {
return Array.getLength(object) == 0;
}
return false;
}
Mas perceba que é necessário tomar um certo cuidado com o que você define como “vazio”.