可迭代集合

 //筛选第一个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');
  }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容