//筛选第一个element
_firstWhereTest() {
var foundItem1 = items.firstWhere((element) => element.length > 5);
print(foundItem1);
var foundItem4 = items.firstWhere((element) => element.length > 10,
orElse: () => 'None!');
print(foundItem4);
final singleItems = ["acsddm"];
var foundItem2 = singleItems.singleWhere((element) => element.contains("e"),
orElse: () => "None!!");
print(foundItem2);
}
//any 有个符合条件返回true, every,全部符合条件返回true
_anyEveryTest() {
print(items.any((element) => element.length > 10));
print(items.every((element) => element.length > 5));
}
//where,赛选符合条件的element
_whereTest() {
const numbers = [4, 5, 1, -2, 3, 42];
var evenNumbers = numbers.where((number) => number.isEven);
for (final number in evenNumbers) {
print('$number is even.');
}
var numbersUntilNegative =
numbers.takeWhile((number) => !number.isNegative).toList();
print(numbersUntilNegative);
var numbersStartNegatives =
numbers.skipWhile((number) => !number.isNegative).toList();
print(numbersStartNegatives);
}
//重新赋值
_mapTest() {
var numbersByTwo =
const [1, -2, 3, 42].map((number) => number * 2).toList();
print('Numbers: $numbersByTwo');
}
可迭代集合
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 1、什么是MVC: M(model模型):主要负责数据(向数据库请求数据) V(view视图):主要负责视图(页面...
- 首先使用迭代器适用性强,因为如果用for循环遍历,需要事先知道集合的数据结构,而且当换了一种集合的话代码不可重用要...