Mam klasykonstruktor sklepie, który akceptuje parametr w odniesieniu
public class Person {
private int age;
}
i korzystania Supplier
w Java 8, można przechowywać odniesienie konstruktora jak
Supplier<Person> personSupplier = Person::new
Ale co, jeśli mój konstruktor przyjmuje parametr age
jak
public class Person {
private int age;
public Person(int age) {this.age = age;}
}
Teraz
Supplier<Person> personSupplier = Person::new
nie działa, więc co powinno być poprawny podpis na personSupplier
? Oczywiście mogę zrobić coś takiego.
Supplier<Person> personSupplier =() -> new Person(10);
Jednak wiek musi być różny dla każdej osoby, więc nie rozwiązuje mojego problemu.
Może powinienem użyć czegoś innego zamiast Supplier
?
również 'IntFunction': D – ZhongYu
Myślę, że twoja pierwsza alternatywa jest bardziej zwięzła niż twoja druga :-) – aioobe
@ bayou.io Właściwie :) – sol4me