import 'dart:async'; void main() {} createStream() async { Duration duration = Duration(seconds: 1); Stream<int> stream = Stream<int>.periodic(duration, (data) => data); //拦截处理,只获取0-9 // stream = stream.take(10); //拦截处理,只获取8之前的数字 stream = stream.takeWhile((data) { return data < 8; }); await for (var i in stream) { print(i); } //跳过前两条 // stream = stream.skip(2); //跳过小于5的数字 // stream = stream.skipWhile((data) => data < 5); //拿到stream所有的数据(stram执行结束,一次性返给listData) // ListlistData = await stream.toList(); // for (var i in listData) { // print(i); // } //拿到stream的数据流个数 // var len = await stream.length; // print('个数:$len'); }
dart笔记15:通过periodic创建stream流
dart笔记15:通过periodic创建stream流,有点类似于定时器,每隔一秒执行一次: