如何使用“减少”来获取 Dart/Flutter 中对象列表中的值的总和

     2023-02-23     94

关键词:

【中文标题】如何使用“减少”来获取 Dart/Flutter 中对象列表中的值的总和【英文标题】:How to use "reduce" to get the sum of values in a list of objects in Dart/Flutter 【发布时间】:2020-08-22 06:24:20 【问题描述】:

假设我有一个这样的对象列表:

provinces = [
name:'cityA', population:1000, area:2000,
name:'cityB', population:2500, area:1500,
name:'cityC', population:5000, area:3000
];

如何在 Dart 中使用 reduce 来获得人口和面积之和的输出,如下所示:


population: 8500,
area: 6500

【问题讨论】:

【参考方案1】:

fold 等价于reduce,你可以这样使用它:

List provinces = [
  "name":'cityA', "population":1000, "area":2000,
  "name":'cityB', "population":2500, "area":1500,
  "name":'cityC', "population":5000, "area":3000
];

dynamic result = provinces.fold("population": 0, "area": 0, (preMap, map) 
  return 
    "population": preMap["population"] + map["population"],
    "area": preMap["area"] + map["area"],
  ;
);
print(result);

结果:

population: 8500, area: 6500

有关reducefold 的更多信息,您可能希望查看指定主题的the details。

【讨论】:

【参考方案2】:

您可以使用 Dart 中的reduce 方法实现此目的。 检查下面的代码:它完美地工作:

代码

 // here is the initial list
  List provinces = [
    "name":'cityA', "population":1000, "area":2000,
    "name":'cityB', "population":2500, "area":1500,
    "name":'cityC', "population":5000, "area":3000
  ];

  // use the reduces method to sum the population and area
  Map<String, dynamic> sum = provinces.reduce((value, element)
    return 
      // sum the population here
      "population": value["population"] + element["population"],
      // sum the area here
      "area": value["area"] + element["area"],
    ;
  );

  // print the sum here
  print(sum);

输出


population: 8500,
area: 6500

要了解更多关于 dart 中 reduce 方法的信息,请查看以下链接:

Reuduce method in dart

我希望这会有所帮助。

【讨论】:

如何使用 dart/flutter 中的共享首选项保存和获取列表列表

】如何使用dart/flutter中的共享首选项保存和获取列表列表【英文标题】:HowtosaveandgetalistoflistsusingSharedpreferencesindart/flutter【发布时间】:2019-10-0511:51:54【问题描述】:我一直在尝试使用dart中的共享首选项保存列表列表。例如,... 查看详情

如何在 Dart/Flutter 中获取设备 IP

】如何在Dart/Flutter中获取设备IP【英文标题】:HowtogetdeviceIPinDart/Flutter【发布时间】:2019-02-2322:36:05【问题描述】:我目前正在编写一个应用程序,用户需要知道他们的手机/平板电脑的IP地址。我在哪里可以找到这些信息?我只... 查看详情

如何使用键路径从嵌套的字典dart中获取值。(代码片段)

我想知道如何获得嵌套字典的值或使用dart(Flutter)中的keypath来更新嵌套字典的值。答案如果你有一个这样的字典。"example":"a":"valA","b":"valB","c":"valC",你可以创建一个类来解析这个对象。classExampleStringa;Stringb;Stringc;Example(this.a,this.b,th... 查看详情

如何使用键路径从嵌套的字典dart中获取值。(代码片段)

我想知道如何获得嵌套字典的值或使用dart(Flutter)中的keypath来更新嵌套字典的值。答案如果你有一个这样的字典。"example":"a":"valA","b":"valB","c":"valC",你可以创建一个类来解析这个对象。classExampleStringa;Stringb;Stringc;Example(this.a,this.b,th... 查看详情

如何在 Dart Flutter 的字典数组中获取某些键的值?

】如何在DartFlutter的字典数组中获取某些键的值?【英文标题】:howtogetvaluesofthesomekeysinArrayofDictionaryinDartFlutter?【发布时间】:2021-07-1613:49:19【问题描述】:我有一个字典数组,其中字典包含许多键值,我只希望一个键值在一个... 查看详情

如何在 Dart/Flutter 中获取当前时间的 GMT 时间偏移值

】如何在Dart/Flutter中获取当前时间的GMT时间偏移值【英文标题】:HowtogetGMTtimeoffsetvalueforcurrenttimeinDart/Flutter【发布时间】:2020-09-0900:30:58【问题描述】:我正在开发一个应用程序,我只需要获取GMT偏移时间,即印度+5.30。我如何... 查看详情

如何在 forEach 样式循环中将某种类型的迭代放入 List - Dart/Flutter

】如何在forEach样式循环中将某种类型的迭代放入List-Dart/Flutter【英文标题】:HowdoIgetiterationsofsometypeintoaListwhileinsideaforEachstyleloop-Dart/Flutter【发布时间】:2021-06-0519:17:51【问题描述】:这是一个很难表达的问题,所以如果我需要... 查看详情

如何在 Dart (Flutter) 中获取每个可迭代值的索引号

】如何在Dart(Flutter)中获取每个可迭代值的索引号【英文标题】:HowtogetindexnumberforEachiterablevalueinDart(Flutter)【发布时间】:2020-10-1302:27:25【问题描述】:我需要index数字forEach可迭代值,因为我想更新我的数据表。但是为了更新数... 查看详情

如何使用 Dart / Flutter 中的列表从列表中删除重复元素?

】如何使用Dart/Flutter中的列表从列表中删除重复元素?【英文标题】:HowtoremoveduplicateelementsfromalistusinglistsinDart/Flutter?【发布时间】:2020-12-1401:07:52【问题描述】:如何从Dart/Flutter中的列表中删除重复项?.toSet().toList()不起作用... 查看详情

Dart Flutter - 使用 Chopper 获取 WordPress 自定义帖子类型

】DartFlutter-使用Chopper获取WordPress自定义帖子类型【英文标题】:DartFlutter-fetchingWordPressCustomPostTypeusingChopper【发布时间】:2020-06-0503:09:50【问题描述】:我正在使用GoogleFlutterFramework构建移动设备,并使用Wordpress作为我的应用程序... 查看详情

如何在 Dart / Flutter 中使用另一个文件的函数?

】如何在Dart/Flutter中使用另一个文件的函数?【英文标题】:HowtouseFunctionsofanotherFileinDart/Flutter?【发布时间】:2018-07-2722:40:51【问题描述】:我有一个Flutter应用程序,我在其中使用了flutter_web_view包。我在几个不同的文件中使用... 查看详情

如何获取某些值的值作为类型<String>,它位于 Dart/Flutter 中 List 内的 Map 内?

】如何获取某些值的值作为类型<String>,它位于Dart/Flutter中List内的Map内?【英文标题】:howtogetvaluesofsomevaluesastype<String>whichisinsideaMapinsideListinDart/Flutter?【发布时间】:2022-01-0623:23:36【问题描述】:我正在尝试在我从API... 查看详情

在 Flutter 中使用 Dart,如何添加到地图列表中的地图列表中?

】在Flutter中使用Dart,如何添加到地图列表中的地图列表中?【英文标题】:UsingDartinFlutter,howdoIaddtoalistofmapsthatisinsideofalistofmaps?【发布时间】:2021-11-1308:05:59【问题描述】:我在使用Dart/Flutter组合时处于初​​级和中级之间。我... 查看详情

forEach() 循环的 Dart/Flutter 批处理?

】forEach()循环的Dart/Flutter批处理?【英文标题】:Dart/FlutterbatchingofaforEach()loop?【发布时间】:2020-05-2700:47:25【问题描述】:我有以下代码调用API以获取我的数据,然后解析结果。我的理解是forEach循环上的“异步”不是阻塞的,... 查看详情

在 dart/flutter 中执行多次从 firestore 获取数据的异步函数

】在dart/flutter中执行多次从firestore获取数据的异步函数【英文标题】:asyncfunctionthatgetsdatafromfirestoreexecutingmultipletimesindart/flutter【发布时间】:2021-08-1712:53:30【问题描述】:我在这里有一段代码应该从firebasefirestore获取一些数据... 查看详情

异步/等待/然后在 Dart/Flutter 中

】异步/等待/然后在Dart/Flutter中【英文标题】:Async/Await/theninDart/Flutter【发布时间】:2019-06-2803:17:36【问题描述】:我有一个颤振应用程序,我在其中使用SQFLITE插件从SQLiteDB获取数据。在这里,我面临一个奇怪的问题。据我了解... 查看详情

如何使用从 EnumClass 扩展并由 Dart/Flutter 中的 build_runner 生成的类?

】如何使用从EnumClass扩展并由Dart/Flutter中的build_runner生成的类?【英文标题】:HowtoworkwithclassesextendedfromEnumClassandgeneratedbybuild_runnerinDart/Flutter?【发布时间】:2022-01-1307:48:55【问题描述】:为了将我的GraphQL架构转换为Dart类,我使... 查看详情

如何在 Dart/Flutter 中使用 Flask Server API 将图像作为请求发布?

】如何在Dart/Flutter中使用FlaskServerAPI将图像作为请求发布?【英文标题】:HowtopostanimageasarequestwithFlaskServerAPIinDart/Flutter?【发布时间】:2020-06-2204:29:39【问题描述】:我想向正文中包含图像的基于Python的API发布请求。我尝试用5种... 查看详情