在Flutter Dart 中,List 和 Iterable 都是集合类型,但它们有一些不同之处。
List 类型是有序的,允许有重复元素的集合,可以通过下标访问元素。在 Dart 中,List 类型是一个抽象类,有多种子类实现,包括 List、FixedLengthList、UnmodifiableListView 等。最常用的还是 List,我们可以使用 List 类型来创建一个可变的列表:
List<String> myList = ["apple", "banana", "orange"];
这个列表可以使用索引来获取元素,例如:
String fruit = myList[1]; // 获取第 2 个元素
我们也可以使用 add() 方法向列表中添加元素:
myList.add("strawberry"); // 往列表尾部添加新元素
Iterable 类型是不可变的,它代表一个可以迭代的集合,但不支持像 List 那样的随机访问。在 Dart 中,Iterable 类型也是一个抽象类,有多种子类实现,包括 Iterable、ListIterable、Set、Queue 等。最常用的还是 Iterable,我们可以通过 Iterable 来创建一个不可变的迭代器:
Iterable<String> myIterable = ["apple", "banana", "orange"];
使用 for 循环来迭代 Iterable:
for (String fruit in myIterable) {
print(fruit);
}
如果您想从 List 创建一个 Iterable,可以使用 Iterable 的 from() 方法:
Iterable<String> iterable = Iterable.from(myList);
总的来说,List 和 Iterable 都是非常常用的集合类型,它们有各自的特点和用途,您可以根据实际情况选择使用哪个类型。