示例代码
Map<String,String> gg={'gg':'abc','kk':'kojk'};
Future<void> secondAsync() async {
await Future.delayed(const Duration(seconds: 2));
print("Second!");
gg.forEach((key,value) async{await Future.delayed(const Duration(seconds: 5));
print("Third!");
});
}
Future<void> thirdAsync() async {
await Future<String>.delayed(const Duration(seconds: 2));
print('third');
}
void main() async {
secondAsync().then((_){thirdAsync();});
}
Run Code Online (Sandbox Code Playgroud)
输出
Second!
third
Third!
Third!
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,我想用来等待地图的 foreach 循环完成然后我想打印third
预期的输出
Second!
Third!
Third!
third
Run Code Online (Sandbox Code Playgroud)