Collections 使用dart中的参数映射getter的结果

Collections 使用dart中的参数映射getter的结果,collections,map,dart,Collections,Map,Dart,我的飞镖 typedef列表回调(int n); StyleCallback获取fn{ 返回(整数n){ 返回新列表。生成(n,(i){ 返回i; }); }; } 我想写一个getter,它获取fn(n)的结果,并对其中的每个元素应用一些函数f。例如,将列表的所有元素乘以2 回调获取myFunc{ 返回Iterable.map(fn,(x)=>2*x); } 但是对于集合没有这样的映射函数。您能建议正确的方法吗?不是答案,但我不可能将此代码添加到注释中。 你可以这样做 iter=[1,2,

我的飞镖

typedef列表回调(int n);
StyleCallback获取fn{
返回(整数n){
返回新列表。生成(n,(i){
返回i;
});
};
}
我想写一个getter,它获取fn(n)的结果,并对其中的每个元素应用一些函数f。例如,将列表的所有元素乘以2

回调获取myFunc{
返回Iterable.map(fn,(x)=>2*x);
}
但是对于集合没有这样的映射函数。您能建议正确的方法吗?

不是答案,但我不可能将此代码添加到注释中。 你可以这样做

iter=[1,2,3,4];
intfn(intx)=>x*x;
列表获取myFunc{
返回iter.map((x)=>fn(x)).toList();
}
void main(){
打印(myFunc);
}
印刷品

[1,4,9,16]


但是我不知道你的
typedef
在哪里合适

我不确定我是否理解你的问题。您可以添加一个更具体的示例(实际上不必是有效的Dart代码)。您希望传递什么值,结果应该是什么样子?@günter-zöchbauer感谢您的回复!我已经更新了问题。我仍然很难理解你想要完成什么。也许你可以用不同于我“答案”中代码的方式来评论你想要的东西。
fn
(x)=。2*x
是函数,所以我不确定要映射哪个iterable,或者
myFunc
的参数应该是什么。您想要类似这样的东西:
callbackgetmyfunc=>(n)=>fn(n).map((x)=>2*x)