Chcę zaimplementować javascript jak metoda w java, jest to możliwe?Obiekt funkcji w Javie
Powiedz, mam klasy Osoba:
public class Person {
private String name ;
private int age ;
// constructor ,accessors are omitted
}
i listę z obiektami osobę:
Person p1 = new Person("Jenny",20);
Person p2 = new Person("Kate",22);
List<Person> pList = Arrays.asList(new Person[] {p1,p2});
Ja wanna zaimplementować metody takie jak to:
modList(pList,new Operation (Person p) {
incrementAge(Person p) { p.setAge(p.getAge() + 1)};
});
Modlist odbiera dwa parametry, jeden to lista, drugi to "Obiekt funkcji", pętle na liście i zastosowanie tej funkcji do każdy element na liście. W języku programowania funkcjonalnego jest to łatwe, nie wiem jak zrobić to java? Może można to zrobić za pośrednictwem dynamicznego proxy, czy to ma kompromitację wydajności w porównaniu z natywną pętlą for?
możliwe duplikat http: //stackoverflow.com/questions/122105/java-what-is-the-best-way-to-filter-a-collection –
Przy bliższym przyjrzeniu się: nie jest to duplikat, ale odpowiedzi mogą ci pomóc. –
Jeśli chcesz tego rodzaju moc, Groovy może być wart obejrzenia. W Groovy napisałbyś: "pList.each {it.age ++}" –