在Dart编程语言中,集合是一种用于存储多个值的数据结构,其中最常用的一种是List(数组或列表)。本文将通过实例详细解析Dart中List的定义、操作及其特性。
1. List的定义
动态类型定义
// 第一种定义List的方式(动态类型) var dynamicList = [1, 2, "3", true, 5, 6, 7]; print(dynamicList); // 获取List长度 print(dynamicList.length); // 根据下标获取元素 print(dynamicList[0]);
在这个例子中,我们创建了一个名为dynamicList
的List,它能够容纳任何类型的元素,因此被称为动态类型List。
2. 明确类型定义
// 第二种定义List的方式(明确类型) var integerList = <int>[1, 2, 3, 4, 5]; // 反转List print(integerList.reversed); print(integerList); // 获取最后一个元素 print(integerList.last);
这里我们创建了一个指定只包含整数类型的ListintegerList
。同时展示了如何使用.reversed
属性来获取List的反转视图。
3. 动态增加元素
// 第三种定义List方式(空集合增加数据) var emptyList = <int>[]; print(emptyList); print(emptyList.length); // 向List中添加元素 emptyList.add(11); emptyList.add(11); emptyList.add(11); emptyList.add(11); print(emptyList);
此例中,我们首先创建了一个初始为空的整数ListemptyList
,然后通过.add()
方法逐个添加元素。
4. 固定长度List
// 第四种定义List方式(固定长度,无法add) var fixedLengthList = List.filled(10, "ab"); print(fixedLengthList); // 输出:[ab, ab, ab, ab, ab, ab, ab, ab, ab, ab] fixedLengthList[2] = "AA"; print(fixedLengthList); // 输出:[ab, ab, AA, ab, ab, ab, ab, ab, ab, ab]
最后,我们利用List.filled()
方法创建了一个具有固定长度且所有元素初始化为相同值的ListfixedLengthList
。尽管其长度固定,但仍然可以修改已存在的元素值。