Flutter中如何从Foo列表提取baz属性生成新的double列表?
提取Foo列表中baz属性的简洁方法
在Dart里,你可以用map方法配合toList()实现更简洁的写法,替代原有的for循环:
List<double> values = fooList.map((foo) => foo.baz).toList();
说明:
map((foo) => foo.baz)会遍历fooList中的每一个Foo对象,将其转换为对应的baz属性值,返回一个包含这些值的迭代器。- 调用
toList()把迭代器转换成List<double>类型的列表。
如果需要更明确的类型约束,也可以在map后指定泛型:
List<double> values = fooList.map<double>((foo) => foo.baz).toList();
这个写法代码更紧凑,符合函数式编程的风格,完全能实现你要的需求。
内容的提问来源于stack exchange,提问作者Elkbender
相关产品推荐
相关产品推荐

