跳转至

高阶函数

expandmap 是用于集合操作的高阶函数。它们可以对集合中的元素进行转换和处理。

map

将集合中的每个元素转换为另一个对象。它会返回一个新的迭代器,其中包含对每个元素应用转换函数后的结果。

用法示例:

List<int> numbers = [1, 2, 3];
List<int> squares = numbers.map((number) => number * number).toList();
print(squares); // 输出: [1, 4, 9]

expand

将集合中的每个元素转换为一个可迭代对象,然后将所有结果合并为一个单一的迭代器。它适合用于将嵌套集合展平。

用法示例:

List<List<int>> nestedList = [[1, 2], [3, 4], [5]];
List<int> flattenedList = nestedList.expand((list) => list).toList();
print(flattenedList); // 输出: [1, 2, 3, 4, 5]

总结

  • map:用于对集合中的每个元素进行转换。
  • expand:用于将集合中的每个元素转换为一个可迭代对象,并将结果合并。适合展平嵌套集合。