Lista referencji do funkcji

0

W java 8 zostały wprowadzone referencje do funkcji https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences.html
moje pytanie brzmi, jak wykorzystać tą funkcjonalność aby utworzyć coś na podobieństwo (listy wskaźnikow do funkcji w C++) tylko, że w javie, aby sobie np. funkcje które mają być wywołane zgromadzić w jakiejś liście, a później je hurtowo wywołać w pętli? Głowię się nad tym i nie wiem jak to poprawnie napisać.

Mniej więcej coś takiego, albo coś podobnego do przykładu poniżej:

List listaReferencjiDoFunkcji = new ArrayList< ?? >(); 
listaReferencjiDoFunkcji(Klasa::funkcja1);
listaReferencjiDoFunkcji(Klasa::funkcja2);
itd..

for(Class c : listaReferencjiDoFunkcji) {
     c::jakaśFunkcja;     // ??
}

Z góry dzięki za pomoc.

3

O coś takiego ci chodzi?

    void test(){
        List<Function<Integer, String>> references = Arrays.asList(this::f1, this::f2);
        for(Function<Integer, String> fun : references){
            String result = fun.apply(5);
        }
    }

    String f1(Integer arg){
        return arg.toString();
    }

    String f2(Integer arg){
        return arg.toString()+"dupa";
    }
0

Tak, o coś takiego, dzięki

0

Zróbcie jakiś dobry artykuł o java 8 : P

1

@jackoi oczywiście jeśli chcesz jakieś inne funkcje tam mieć z innymi parametrami czy coś (np. zwracające void, albo bez argumentów etc) to musisz zrobic sobie interfejs i dorzucić mu adnotacje @FunctionalInterface.

1 użytkowników online, w tym zalogowanych: 0, gości: 1