Usando findAll Coleção Encerramento em Groovy
Pergunta
Eu tenho um "Set" que eu preciso para usar o fechamento findAll em cima. O conjunto contém objetos, e não apenas valores primitivos. Por exemplo ... Eu tenho um conjunto de Employee objetos e eu preciso iterate e elementos de agarrar desse conjunto de empolyee Objetos por atributos do empregado.
Por alguma razão o fechamento findAll parece ser simplesmente ignorar o meu próximo e retorna um conjunto vazio.
Aqui está a minha sintaxe;
dstCollection = srcCollection.findAll{
it.age == 22
}
Solução
Os seguintes trabalhos para mim:
class Employee {
int age
String toString() {
age
}
}
def list = [ new Employee(age:22), new Employee(age:23), new Employee(age:22) ] as Set
println list
println list.findAll { it.age == 22 }
saída:
[22, 23, 22]
[22, 22]
Você pode postar seu código?
Editar: adicionado "como Set", desde que eu notei a pergunta é sobre conjuntos e não listas. Isso também funciona para mim.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow