Dart 编程 - 集合

与其他编程语言不同,Dart 不支持数组。Dart 集合可用于复制数组等数据结构。dart:core 库和其他类在 Dart 脚本中启用了集合支持。

Dart 集合基本上可以归类为 −

Sr.No Dart 集合 & 说明
1 列表

列表只是一组有序的对象。 dart:core 库提供了 List 类,可用于创建和操作列表。

  • 固定长度列表 − 列表的长度在运行时无法更改。

  • 可增长列表 − 列表的长度可在运行时更改。

2 Set

Set 表示对象的集合,其中每个对象只能出现一次。 dart:core 库提供了 Set 类来实现相同的功能。

3 Maps

Map 对象是一个简单的键/值对。Map 中的键和值可以是任何类型。Map 是一个动态集合。换句话说,Map 可以在运行时增长和缩小。dart:core 库中的 Map 类提供了对 Map 的支持。

4 Queue

Queue 是一个可以在两端操作的集合。当您想要构建先进先出的集合时,队列非常有用。简单来说,队列从一端插入数据,从另一端删除。值按插入顺序删除/读取。

迭代集合

dart:core 库中的 Iterator 类可以轻松实现集合遍历。每个集合都有一个 iterator 属性。此属性返回指向集合中对象的迭代器。

示例

以下示例说明如何使用迭代器对象遍历集合。

import 'dart:collection'; 
void main() { 
   Queue numQ = new Queue(); 
   numQ.addAll([100,200,300]);  
   Iterator i= numQ.iterator; 
   
   while(i.moveNext()) { 
      print(i.current); 
   } 
}

moveNext() 函数返回一个布尔值,表示是否有后续条目。迭代器对象的 current 属性返回迭代器当前指向的对象的值。

此程序应产生以下输出

100 
200 
300