Вы можете попробовать Project LambdaJ в Google Code, он очень хорошо подходит для использования замыканий с Java
Фильтрация по условию:
Фильтрация элементов коллекции по заданному условию является очень распространенной задачей, и использовать lambdaj можно так же просто, как в следующем примере:
List<Integer> biggerThan3 = filter(greaterThan(3), asList(1, 2, 3, 4, 5));
Условие, определяющее, как фильтровать список, выражается как hamcrest matcher.
Или вы можете подождать JDK 8: -)