//筛选第一个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循环遍历,需要事先知道集合的数据结构,而且当换了一种集合的话代码不可重用要...