【问题标题】:What is an Iterable in Dart? [duplicate]Dart 中的 Iterable 是什么? [复制]
【发布时间】:2020-12-02 08:38:33
【问题描述】:

我对@9​​87654321@ 和List<int> 之间的区别感到有些困惑?因为有时候我面对Iterable<SomeObject>,不知道为什么用它?

谢谢。

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    已经回答了差异部分,但没有回答为什么要使用它。您要使用可迭代的主要原因是因为它是通用的。

    对该对象的唯一要求是它必须是可迭代的,也就是说,您可以对其进行迭代。使用列表,您可以编写一个 for 循环进行迭代,对于 map,您可以遍历它的键并对值做一些事情,函数并不关心如何。它唯一关心的就是遍历所有值的能力。

    【讨论】:

      【解决方案2】:

      我发现的是:

      Iterable 是可以顺序访问的元素的集合,不能直接实例化它。

      list和Iterable的主要区别在于:

      使用 Iterable,你不能保证按索引读取元素是有效的。与 List 不同,Iterable 没有 [] 运算符。

      来源:

      dart.dev/codelabs/iterables

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-04-29
        • 2017-08-17
        • 2017-08-01
        • 2020-03-27
        • 2020-12-31
        • 2020-06-14
        • 2010-11-06
        相关资源
        最近更新 更多