在搜寻一些代码时,我遇到了箭头运算符,它究竟是做什么的?我以为Java没有箭头运算符。
return (Collection<Car>) CollectionUtils.select(listOfCars, (arg0) -> {
return Car.SEDAN == ((Car)arg0).getStyle();
});
详细信息:Java 6,Apache Commons Collection,IntelliJ 12
更新/答案:事实证明IntelliJ 12支持Java 8,后者支持lambda,并且正在“折叠”谓词并将其显示为lambda。下面是“展开”代码。
return (Collection<Car>) CollectionUtils.select(listOfCars, new Predicate() {
public boolean evaluate(Object arg0) {
return Car.SEDAN == ((Car)arg0).getStyle();
}
});
5
请注意,确切的情况是IntelliJ 将现有代码呈现为lambda表达式,以使其更易于阅读。实际的代码不是lambda表达式。
—
托尔比约恩Ravn的安徒生