Dart中Future中api的一些使用
2019-09-19 本文已影响0人
三米板
总结了几个Future使用的小示例,便于我们理解Future API的原理。
Future.when
下面的例子,可以让我们理解when的链式数据传递。
Future fu = Future((){
return "这个数据给了第一个when";
});
fu.then((wome){
print(wome) ;
return "我";
}).then((name){
print(name);
return "是David";
}).then((name){
print(name) ;
print("--------over--------") ;
});
打印结果
这个数据给了第一个when
我
是David
--------over--------
async && await
class Point{
Future<void> wantToTestPoint() async{
printPoint();//这里会被执行
await print("i print after printPoint()") ;//这里会被执行并返回
await print("i print after printPoint() afeter") ;//这一句最后被执行
}
Future<void> printPoint() async{
await print("point async printPoint");//这里会被执行并返回
}
}
//调用
Point p = Point.origin() ;
p.wantToTestPoint();
print("I want this should be first printed");
//打印结果
I/flutter ( 9825): point async printPoint
I/flutter ( 9825): i print after printPoint()
I/flutter ( 9825): I want this should be first printed
I/flutter ( 9825): i print after printPoint() afeter