Middle
Čo sú to lambda výrazy v Jave a akú úlohu zohrávajú?
sobes.tech AI
Odpoveď od AI
Výrazy lambda v Jave sú anonymné funkcie, ktoré umožňujú odovzdávať kód ako dáta.
Úloha výrazov lambda:
- Zjednodušenie kódu: Umožňujú písať kratší a čitateľnejší kód, najmä pri práci s funkčnými rozhraniami.
- Funkcionálne programovanie: Podporujú paradigmu funkcionálneho programovania v Jave, čím ho robia flexibilnejším.
- Zlepšenie práce s kolekciami: Používajú sa v API Stream na operácie ako filtrovanie, mapovanie a redukcia.
- Zníženie šablónového kódu: Nahrádzajú v mnohých prípadoch anonymné vnútorné triedy.
Príklad:
// Použitie anonymnej vnútorné triedy
Runnable classicRunnable = new Runnable() {
@Override
public void run() {
System.out.println("Ahoj zo starého spôsobu!");
}
};
// Použitie lambda
Runnable lambdaRunnable = () -> System.out.println("Ahoj z lambda!");
// Použitie lambda s API Stream na filtrovanie
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
List<String> filteredNames = names.stream()
.filter(name -> name.startsWith("A"))
.collect(Collectors.toList());