You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dart/Flutter如何将现有代码段封装为接收数组参数的函数

Dart代码函数封装实现方案

你可以按以下方案完成封装:核心逻辑是把「二维数组扁平化→排序」的逻辑抽离为独立函数,支持传入任意二维整型数组作为参数。

完整可运行代码

void main() {
  // 测试用的二维数组
  var pairs = [[9, 5, 1], [3, 6]];
  // 调用封装好的函数
  var sortedResult = flattenAndSort(pairs);
  print('Result: $sortedResult');
}

// 封装后的独立函数:入参是二维int数组,返回排序后的一维int数组
List<int> flattenAndSort(List<List<int>> nestedList) {
  var flattened = nestedList.expand((element) => element).toList();
  flattened.sort();
  return flattened;
}

补充说明

  • 如果不需要返回值,仅需要直接打印结果,也可以把函数调整为无返回值的形式:
void printFlattenedSortedList(List<List<int>> nestedList) {
  var flattened = nestedList.expand((element) => element).toList();
  flattened.sort();
  print('Result: $flattened');
}
// 调用方式:直接传入数组即可
// printFlattenedSortedList([[9, 5, 1], [3, 6]]);
  • 如果你需要支持处理其他数字类型的场景,也可以把入参类型调整为List<List<num>>,返回值对应改为List<num>即可。

内容的提问来源于stack exchange,提问作者artdart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:06:08