推荐答案
在 Dart 中,List 是一个常用的集合类型,提供了许多方法来操作列表中的元素。以下是一些常用的 List 方法:
add(element):将元素添加到列表的末尾。addAll(iterable):将可迭代对象中的所有元素添加到列表的末尾。insert(index, element):在指定索引处插入元素。insertAll(index, iterable):在指定索引处插入可迭代对象中的所有元素。remove(element):移除列表中第一个匹配的元素。removeAt(index):移除指定索引处的元素。removeLast():移除并返回列表中的最后一个元素。removeRange(start, end):移除指定范围内的元素。clear():移除列表中的所有元素。indexOf(element):返回元素在列表中第一次出现的索引,如果未找到则返回 -1。lastIndexOf(element):返回元素在列表中最后一次出现的索引,如果未找到则返回 -1。contains(element):检查列表是否包含指定元素。forEach((element) { ... }):对列表中的每个元素执行指定的操作。map((element) { ... }):对列表中的每个元素应用函数并返回一个新的可迭代对象。where((element) { ... }):返回满足条件的元素组成的新列表。any((element) { ... }):检查列表中是否有元素满足条件。every((element) { ... }):检查列表中的所有元素是否都满足条件。sort([compareFunction]):根据可选的比较函数对列表进行排序。sublist(start, [end]):返回从start到end(不包括end)的子列表。shuffle():随机打乱列表中的元素顺序。
本题详细解读
add(element)
add 方法用于将单个元素添加到列表的末尾。例如:
List<int> numbers = [1, 2, 3]; numbers.add(4); // numbers 现在是 [1, 2, 3, 4]
addAll(iterable)
addAll 方法用于将可迭代对象中的所有元素添加到列表的末尾。例如:
List<int> numbers = [1, 2, 3]; numbers.addAll([4, 5, 6]); // numbers 现在是 [1, 2, 3, 4, 5, 6]
insert(index, element)
insert 方法用于在指定索引处插入元素。例如:
List<int> numbers = [1, 2, 3]; numbers.insert(1, 10); // numbers 现在是 [1, 10, 2, 3]
insertAll(index, iterable)
insertAll 方法用于在指定索引处插入可迭代对象中的所有元素。例如:
List<int> numbers = [1, 2, 3]; numbers.insertAll(1, [10, 11]); // numbers 现在是 [1, 10, 11, 2, 3]
remove(element)
remove 方法用于移除列表中第一个匹配的元素。例如:
List<int> numbers = [1, 2, 3, 2]; numbers.remove(2); // numbers 现在是 [1, 3, 2]
removeAt(index)
removeAt 方法用于移除指定索引处的元素。例如:
List<int> numbers = [1, 2, 3]; numbers.removeAt(1); // numbers 现在是 [1, 3]
removeLast()
removeLast 方法用于移除并返回列表中的最后一个元素。例如:
List<int> numbers = [1, 2, 3]; int last = numbers.removeLast(); // last 是 3, numbers 现在是 [1, 2]
removeRange(start, end)
removeRange 方法用于移除指定范围内的元素。例如:
List<int> numbers = [1, 2, 3, 4, 5]; numbers.removeRange(1, 3); // numbers 现在是 [1, 4, 5]
clear()
clear 方法用于移除列表中的所有元素。例如:
List<int> numbers = [1, 2, 3]; numbers.clear(); // numbers 现在是 []
indexOf(element)
indexOf 方法用于返回元素在列表中第一次出现的索引,如果未找到则返回 -1。例如:
List<int> numbers = [1, 2, 3, 2]; int index = numbers.indexOf(2); // index 是 1
lastIndexOf(element)
lastIndexOf 方法用于返回元素在列表中最后一次出现的索引,如果未找到则返回 -1。例如:
List<int> numbers = [1, 2, 3, 2]; int index = numbers.lastIndexOf(2); // index 是 3
contains(element)
contains 方法用于检查列表是否包含指定元素。例如:
List<int> numbers = [1, 2, 3]; bool contains = numbers.contains(2); // contains 是 true
forEach((element) { ... })
forEach 方法用于对列表中的每个元素执行指定的操作。例如:
List<int> numbers = [1, 2, 3];
numbers.forEach((number) {
print(number); // 依次输出 1, 2, 3
});map((element) { ... })
map 方法用于对列表中的每个元素应用函数并返回一个新的可迭代对象。例如:
List<int> numbers = [1, 2, 3]; var doubled = numbers.map((number) => number * 2); // doubled 是 (2, 4, 6)
where((element) { ... })
where 方法用于返回满足条件的元素组成的新列表。例如:
List<int> numbers = [1, 2, 3, 4]; var evenNumbers = numbers.where((number) => number % 2 == 0); // evenNumbers 是 (2, 4)
any((element) { ... })
any 方法用于检查列表中是否有元素满足条件。例如:
List<int> numbers = [1, 2, 3]; bool hasEven = numbers.any((number) => number % 2 == 0); // hasEven 是 true
every((element) { ... })
every 方法用于检查列表中的所有元素是否都满足条件。例如:
List<int> numbers = [1, 2, 3]; bool allEven = numbers.every((number) => number % 2 == 0); // allEven 是 false
sort([compareFunction])
sort 方法用于根据可选的比较函数对列表进行排序。例如:
List<int> numbers = [3, 1, 2]; numbers.sort(); // numbers 现在是 [1, 2, 3]
sublist(start, [end])
sublist 方法用于返回从 start 到 end(不包括 end)的子列表。例如:
List<int> numbers = [1, 2, 3, 4, 5]; var sublist = numbers.sublist(1, 3); // sublist 是 [2, 3]
shuffle()
shuffle 方法用于随机打乱列表中的元素顺序。例如:
List<int> numbers = [1, 2, 3, 4, 5]; numbers.shuffle(); // numbers 现在是随机顺序的 [1, 2, 3, 4, 5]