Ritornare più valori in una funzione in Dart
Di default Dart non permette ad una funziona di ritornare più valori.
Dalla versione 3, però, è possibile usare il tipo Records per ottenere sostanzialmente lo stesso risultato.
Qui sotto un esempio di codice:
(int, String) myFun(int a, int b) {
return (a + b, "QUESTA È UNA STRINGA");
}
void main() {
var (a, b) = myFun(13, 10);
print("SOMMA: ${a}");
print("STRINGA: ${b}");
}
Alla funzione passiamo due argomenti, che andremmo a sommare.
La funzione restituisce:
- la somma
- una stringa
Ovviamente è anche possibile aumentare i valori ritornati:
(int, double, String) myFun(int a, int b) {
return (a + b, 103.5, "QUESTA È UNA STRINGA");
}
void main() {
var (a, b, c) = myFun(13, 10);
print("SOMMA: ${a}");
print("DOUBLE: ${b}");
print("STRINGA: ${c}");
}
Enjoy!
dart records
Commentami!