takeWhile 方法

Iterable<String> takeWhile(
  1. bool test(
    1. String value
    )
)
继承

创建一个按顺序满足 test 的元素的懒加载可迭代器。

过滤是懒加载的。每个返回的可迭代器的新迭代器都从这个 this 的元素开始迭代。

可以通过遍历 迭代器 并计算元素直到找到满足 test(element) 为 false 的元素来计算元素。在此点,返回的可迭代器停止(它的 moveNext() 返回 false)。

示例

final numbers = <int>[1, 2, 3, 5, 6, 7];
var result = numbers.takeWhile((x) => x < 5); // (1, 2, 3)
result = numbers.takeWhile((x) => x != 3); // (1, 2)
result = numbers.takeWhile((x) => x != 4); // (1, 2, 3, 5, 6, 7)
result = numbers.takeWhile((x) => x.isOdd); // (1)

实现

Iterable<String> takeWhile(bool test(String value)) =>
    readClasses().takeWhile(test);