Mientras buscaba algún código me encontré con el operador de flecha, ¿qué hace exactamente? Pensé que Java no tenía un operador de flecha.
return (Collection<Car>) CollectionUtils.select(listOfCars, (arg0) -> {
return Car.SEDAN == ((Car)arg0).getStyle();
});
Detalles : Java 6, Apache Commons Collection, IntelliJ 12
Actualización / Respuesta: Resulta que IntelliJ 12 es compatible con Java 8, que es compatible con lambdas, y está predicando "plegando" y mostrándolos como lambdas. A continuación se muestra el código "sin plegar".
return (Collection<Car>) CollectionUtils.select(listOfCars, new Predicate() {
public boolean evaluate(Object arg0) {
return Car.SEDAN == ((Car)arg0).getStyle();
}
});