Sobes.tech
Junior

Co jsou anonymní funkce?

sobes.tech AI

Odpověď od AI

Anonymní funkce (nebo lambda výraz) v Dart/Flutter je funkce bez jména. Může přijímat argumenty a vracet hodnotu, podobně jako běžné funkce, ale je definována přímo tam, kde je použita.

Hlavní vlastnosti:

  • Bez jména: Nemají identifikátor pro opakované volání podle jména.
  • Definice na místě: Vytvářejí se a používají ihned tam, kde jsou potřeba.
  • Uzávěry: Mohou zachytit proměnné z oblasti, kde byly definovány.

Příklady použití:

  • Jako parametry jiných funkcí (například callbacky).
  • Pro krátké jednorázové operace.
// Příklad použití anonymní funkce jako callbacku pro metodu forEach
List<int> numbers = [1, 2, 3];
numbers.forEach((number) {
  print(number * 2);
});

// Anonymní funkce přiřazená proměnné
var multiply = (int a, int b) {
  return a * b;
};
print(multiply(5, 3));

Výhody:

  • Kompaktnější kód pro jednoduché operace.
  • Umožňují předávat chování jako argumenty.
  • Často se používají v funkcionálním programování.