I have a List<String> stringValues;
that are actually numbers in quotes. I want to convert this list to List<int> intValues
. What's an elegant way to do this?
There is list.forEach()
that does not return anything, there is iterable.expand()
that returns an iterable per element, there is iterable.fold()
that returns just one element for the whole list. I could not find something that will allow me to pass each element through a closure and return another list that has the return values of the closure.
We can convert Dart List to Map in another way: forEach() method. var map2 = {}; list.
For adding elements to a List , we can use add , addAll , insert , or insertAll . Those methods return void and they mutate the List object.
Use map()
and toList()
for this. toList()
is necessary because map()
returns only an Iterable
:
stringValues.map((val) => int.parse(val)).toList()
or shorter (thanks to @AlexandreArdhuin)
stringValues.map(int.parse).toList()
Dartpad example
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With