Preciso realizar uma verificação nula / vazia em algum código, antes de realizar alguma lógica. Eu tenho item abaixo, porque eu sinto!members?.empty
não é correto.
Existe uma maneira melhor de escrever o seguinte?
if (members && !members.empty) {
// Some Work
}
members?.age.max()
explode com "Não é possível invocar o método max () no objeto nulo" quando os membros são nulos. Você precisariamembers?.age?.max()
List members = null;
e compare asList members = [ [age: 12], [age: 24], [age: null], null ]
duas soluçõesAcho que agora a melhor maneira de resolver esse problema é o código acima. Funciona desde Groovy 1.8.1 http://docs.groovy-lang.org/docs/next/html/groovy-jdk/java/util/Collection.html#find () . Exemplos:
fonte
Para sua informação, esse tipo de código funciona (você pode achar que é feio, está certo :)):
Em outras palavras, este código tem verificações nulas / vazias, ambas inúteis:
fonte