Использование замыкания коллекции findAll в Groovy
Вопрос
У меня есть «Set», для которого мне нужно использовать замыкание findAll.Набор содержит объекты, а не только примитивные значения.Например...У меня есть набор объектов «Сотрудник», и мне нужно перебирать и захватывать элементы этого набора объектов «Сотрудник» по атрибутам «Сотрудник».
По какой-то причине закрытие findAll просто игнорирует мое закрытие и возвращает пустой набор.
Вот мой синтаксис;
dstCollection = srcCollection.findAll{
it.age == 22
}
Решение
Для меня работает следующее:
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 }
выход:
[22, 23, 22]
[22, 22]
Можете ли вы опубликовать свой код?
Редактировать:добавлено «как набор», так как я заметил, что вопрос касается наборов, а не списков.Это также работает для меня.
Не связан с StackOverflow