Last active
March 1, 2025 16:53
-
-
Save nicol-ograve/19d31cab0d28d7aef480a441d16efee6 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void main() { | |
List<int> numbers = [1, 2, 3, 4, 5]; | |
// forEach: Itera sulla lista ed esegue un'operazione su ogni elemento | |
print("forEach:"); | |
numbers.forEach((num) => print(num * 2)); | |
// map: Trasforma ogni elemento della lista e restituisce una nuova lista | |
List<int> doubledNumbers = numbers.map((num) => num * 2).toList(); | |
print("\nmap: $doubledNumbers"); | |
// where: Filtra gli elementi della lista in base a una condizione | |
List<int> evenNumbers = numbers.where((num) => num.isEven).toList(); | |
print("\nwhere (numeri pari): $evenNumbers"); | |
// reduce: Riduce la lista a un singolo valore (somma degli elementi) | |
int sum = numbers.reduce((value, element) => value + element); | |
print("\nreduce (somma): $sum"); | |
// fold: Simile a reduce, ma con un valore iniziale | |
int sumWithInitial = numbers.fold(10, (prev, element) => prev + element); | |
print("\nfold (somma con valore iniziale 10): $sumWithInitial"); | |
// any: Verifica se almeno un elemento soddisfa una condizione | |
bool hasEven = numbers.any((num) => num.isEven); | |
print("\nany (contiene numeri pari?): $hasEven"); | |
// every: Verifica se tutti gli elementi soddisfano una condizione | |
bool allPositive = numbers.every((num) => num > 0); | |
print("\nevery (tutti positivi?): $allPositive"); | |
// take: Prende i primi n elementi della lista | |
List<int> firstThree = numbers.take(3).toList(); | |
print("\ntake (primi 3 elementi): $firstThree"); | |
// skip: Salta i primi n elementi e prende il resto | |
List<int> skippedTwo = numbers.skip(2).toList(); | |
print("\nskip (salta i primi 2 elementi): $skippedTwo"); | |
// sort: Ordina la lista in modo crescente | |
List<int> unorderedNumbers = [5, 3, 8, 1, 4]; | |
unorderedNumbers.sort(); // comparatore opzionale | |
print("\nsort (ordinati): $unorderedNumbers"); | |
// reversed: Restituisce un iterabile con gli elementi in ordine inverso | |
List<int> reversedNumbers = numbers.reversed.toList(); | |
print("\nreversed (invertiti): $reversedNumbers"); | |
// firstWhere: Restituisce il primo elemento che soddisfa una condizione | |
int firstEven = numbers.firstWhere((num) => num.isEven, orElse: () => -1); | |
print("\nfirstWhere (primo numero pari): $firstEven"); | |
// lastWhere: Restituisce l'ultimo elemento che soddisfa una condizione | |
int lastEven = numbers.lastWhere((num) => num.isEven, orElse: () => -1); | |
print("\nlastWhere (ultimo numero pari): $lastEven"); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment