esse é o primeiro artigo, do meu blog, e segue aqui o link, espero ajudar alguem ^^
A ideia é conseguir realizar pesquisas, remoções, retenções, adições em Coleções, utilizando qualquer criterio de busca em uma lista de candidatos
http://java-i9se.blogspot.com/
Apenas dando uma palinha do artigo, Imagine que vc tenha uma classe Empresa que tenha propriedades que vamos abstrair como são montadas, e queremos encontrar em uma lista de empresasList<Empresa> todasEmpresas = getAllEmpresas();
todas as empresas onde empresa.getTelefones().size() > 3; //que tenham pelomenos 3 telefones
empresa.getEndereco().getCidade.equals(joaoPessoa); //e que tenham sede em joão pessoa
para realizar a busca basta criar o filtro com os criteriosFilter<Empresa> filtroEmpresa = new Filter<Empresa>() {
public boolean match(Empresa candidate) {
return candidate.getTelefones().size() > 3 &&
candidate.getEndereco().getCidade.equals(joaoPessoa);
}
}
Agora para realizar a busca basta um simples
List<Empresa> empresasDeJoaoPessoaCom3Telefones =
CollectionUtils.findAllMatch(todasEmpresas,filtroEmpresa);
pronto ta feito o filtro… mais informações no artigo…
espero ajudar alguem