Depois que conheci as funcionalidades do Array no Ruby e do LINQ no .NET, iterar sobre coleções virou procedimento medieval.
Para Java existem APIs que auxiliam isso, como quaere e lambdaj. Mas não gostei de nenhuma delas.
Fiz um experimento, criei uma API que realiza filtro, só pra ver como ficaria. Gostei do resultado. Chamei de Coollections e coloquei no Github.
Um filtro sobre uma List de pessoas ficaria assim:
from(people).where("name", eq("Arthur")).first();
from(people).where("age", lessThan(20)).all();
from(people).where("name", not(contains("Francine"))).all();
Mais informações no README.
Quero saber o que acharam: duvidas, bugs, sugestões e colaborações.