我正在使用一个对象数组,其中一个对象是一个函数。我尝试以正常方式调用它但它似乎不起作用。我也试过类型铸造它也没用。
List<Object> list = ['some other type of data', (String p) { /* do something */}];
list[1]('some string'); // Expression doesn't evaluate to a function
我需要以某种方式调用列表索引1处的函数。
这可能会做你想要的
(list[1] as void Function(String))('some string');
要不就
(list[1] as Function)('some string');
我刚刚找到了解决方案。我已经尝试过java方式的类型转换,它似乎不适用于飞镖。
这就是我做的,
List<Object> list = ['some other type of data', (String p) { /* do something */}];
Function f = list[1];
f('some string'); // This worked!