Dart 转换列表的每个元素

Posted

技术标签:

【中文标题】Dart 转换列表的每个元素【英文标题】:Dart convert every element of list 【发布时间】:2016-09-30 14:23:03 【问题描述】:

我有一个List<String> stringValues;,实际上是引号中的数字。我想将此列表转换为List<int> intValues。有什么优雅的方法可以做到这一点?

list.forEach() 不返回任何内容,iterable.expand() 为每个元素返回一个可迭代对象,iterable.fold() 仅返回整个列表的一个元素。我找不到可以让我通过闭包传递每个元素并返回另一个具有闭包返回值的列表的东西。

【问题讨论】:

【参考方案1】:

为此使用map()toList()toList() 是必要的,因为map() 只返回一个Iterable

stringValues.map((val) => int.parse(val)).toList()

或更短(感谢@AlexandreArdhuin)

stringValues.map(int.parse).toList()

Dartpad example

【讨论】:

你也可以使用stringValues.map(int.parse).toList()作为简写。 我总是希望能做到这一点。感谢您的提示。

以上是关于Dart 转换列表的每个元素的主要内容,如果未能解决你的问题,请参考以下文章