Junior
Čo sú anonymné funkcie?
sobes.tech AI
Odpoveď od AI
Anonymná funkcia (alebo lambda výraz) v Dart/Flutter je funkcia bez mena. Môže prijímať argumenty a vracať hodnotu, podobne ako bežné funkcie, ale je definovaná priamo tam, kde sa používa.
Hlavné charakteristiky:
- Bez mena: Nemajú identifikátor na opakované volanie podľa mena.
- Definícia na mieste: Vytvárajú sa a používajú sa okamžite tam, kde sú potrebné.
- Uzávierky: Môžu zachytiť premenné z oblasti, kde boli definované.
Príklady použitia:
- Ako parametre iných funkcií (napríklad callbacky).
- Pre krátke jednorazové operácie.
// Príklad použitia anonymnej funkcie ako callbacku pre metódu forEach
List<int> numbers = [1, 2, 3];
numbers.forEach((number) {
print(number * 2);
});
// Anonymná funkcia priradená premennej
var multiply = (int a, int b) {
return a * b;
};
print(multiply(5, 3));
Výhody:
- Kompaktnejší kód pre jednoduché operácie.
- Umožňujú odovzdanie správania ako argumentu.
- Často sa používajú v funkcionálnom programovaní.