irebirth
String times(str)意思是说参数是一个函数,函数的返回值是String类型,函数名字叫times,有一个参数是str。其实String times(str)也就是函数原型。
慕莱坞1094764
第一种解决方式 : times方法中入参类型String删掉;
String times(msg) {
return msg * 3;
}第二种解决方式 : listTimes方法种函数入参 msg加入String
/// 创建了一个传入函数的方法
List listTimes(List list, String times(String msg)) {
for (int i = 0; i < list.length; i++) {
list[i] = times(list[i]);
}
return list;
}
qq_什么清华北大不如胆子够大_0
List listTimes (List list, String f(str)) {
var rt = [];
for (var index = 0; index < list.length; ++index) {
rt.add(f(list[index]));
}
return rt;
}
慕小七7

看图,String times(Str)是个形参,其中的`String`和`(Str)`只是这个形参的描述。
调用listTimes(list2, times)相当于把方法对象 times赋值给了形参String times(Str),String times(Str) = times
宝慕林7191517
根据老师讲的,dart中字符串和数字相乘得到的是一个字符串,这个应该是Dart特有的,反正我没在其他语言里见过;
启普同鑫WXQ
32行,删掉第二个 String。
启普同鑫WXQ
void main(){
var list = ["wo", "kao", "1", "20.5"];
var result = listTime3(list, times3);
print(result);
}
listTime3(list,times3(item)){
for (var index = 0; index < list.length; index ++){
list[index] = times3(list[index]);
}
return list;
}
times3(item) {
return item*3;
}