Sobes.tech
Junior — Middle

V akých situáciách ste vo svojich projektoch používali funkčné rozhrania?

sobes.tech AI

Odpoveď od AI

V Jave som používal funkčné rozhrania v situáciách, keď bolo potrebné odovzdať správanie ako parameter, napríklad pri práci s tokmi dát (Streams API) alebo pri implementácii spätných volaní (callbackov). Často som používal rozhrania z balíka java.util.function, ako sú Predicate, Function, Consumer, na filtrovanie, transformáciu a spracovanie kolekcií.

Príklad použitia funkčného rozhrania Predicate na filtrovanie zoznamu:

List<String> mená = Arrays.asList("Anna", "Bob", "Alice", "Mike");
Predicate<String> začínaNaA = s -> s.startsWith("A");
List<String> filtrované = mená.stream()
                                .filter(začínaNaA)
                                .collect(Collectors.toList());
// filtrované bude obsahovať "Anna" a "Alice"