कुछ कोड के माध्यम से शिकार करते समय मैं तीर ऑपरेटर के पास आया, यह वास्तव में क्या करता है? मुझे लगा कि जावा में एक तीर ऑपरेटर नहीं है।
return (Collection<Car>) CollectionUtils.select(listOfCars, (arg0) -> {
return Car.SEDAN == ((Car)arg0).getStyle();
});
विवरण : Java 6, Apache Commons Collection, IntelliJ 12
अद्यतन / उत्तर: यह पता चलता है कि इंटेलीज 12 जावा 8 का समर्थन करता है, जो लैम्ब्डा का समर्थन करता है, और लैम्बदास के रूप में "फोल्डिंग" को भविष्यवाणी और प्रदर्शित करता है। नीचे "अन-फोल्ड" कोड है।
return (Collection<Car>) CollectionUtils.select(listOfCars, new Predicate() {
public boolean evaluate(Object arg0) {
return Car.SEDAN == ((Car)arg0).getStyle();
}
});