主题
List
基本定义
dart
var arr = <String>[];
var arr = ['musi'];
构造 API
List.generate(int length, E generator(int index))
- 创建给定长度的列表,并在每个位置填充构造的元素
dartList.generate(3, (index) { return index * 2 }) // [0, 2, 4]
List.filled(int length, E fill)
- 创建给定长度的列表,并在每个位置填充
List.from(Iterable elements)
- 创建一个包含所有元素的列表
List.of(Iterable elements)
- 创建一个包含所有元素的列表
属性
first
- 返回列表第一项
isEmpty
- 返回列表是否为空
isNotEmpty
- 返回列表是否不为空
last
- 返回列表最后一项
length
- 返回列表长度
reversed
- 返回翻转后的列表
single
- 返回列表是否只有一项
方法
add(E value) → void
- 将值添加到此列表的末尾,将长度延长一
addAll(Iterable<E> iterable ) → void
- 将 iterable 的所有对象附加到此列表的末尾
dartvar arr = [1, 2]; arr.addAll([3, 4]); // [1, 2, 3, 4]
asMap() → Map<int, E>
- 将列表转成 Map
clear() → void
- 将列表清空
contains(Object? element) → bool
- 列表是否包含等于 element 的元素
elementAt(int index) → E
- 返回下标为 index 的元素
every(bool test(E element)) → bool
- 检查此迭代的每个元素是否满足测试
dartarr.every((e) => e == 1));
fillRange(int start, int end, [E? fillValue]) → void
- 用 fillValue 覆盖一系列元素
firstWhere(bool test(E element)) → E
- 返回满足条件的第一个元素
forEach(void action(E element)) → void
- 循环列表
getRange(int start, int end) → Iterable<E>
- 返回子列表
indexOf(E element, [int start = 0]) → int
- 返回对应第一个 element 的索引
insert(int index, E element) → void
- 在此列表中的位置索引处插入元素
insertAll(int index, Iterable<E> iterable) → void
- 在此列表中的位置索引处插入一组迭代
join([String separator = ""]) → String
- 将每个元素转换为字符串并连接字符串
lastIndexOf(E element, [int start = 0]) → int
- 返回对应最后一个 element 的索引
lastWhere(bool test(E element)) → E
- 返回满足条件的最后一个元素
map<T>(T toElement(E e)) → Iterable<T>
- 根据列表返回一个新列表
reduce(E combine(E value, E element)) → E
- 通过使用提供的函数迭代组合集合的元素,将集合减少到单个值
remove(Object? value) → bool
- 删除一个元素
removeAt(int index) → E
- 删除对应索引的元素
removeRange(int start, int end) → void
- 删除对应范围的元素
replaceRange(int start, int end, Iterable<E> replacements) → void
- 用替换元素替换一系列元素
sort([int compare(E a, E b)?]) → void
- 排序