[英]How to sum values from Map snapshot Flutter Firebase to get Total
[英]How to get total amount from all currency in list of map
我有地圖列表,你可以這樣說:
[{id: 2020-09-08 12:28:55.065818, amount: 60.0, currency: MAD},
{id: 2020-09-08 12:48:31.771243, amount: 10.0, currency: EUR},
{id: 2020-09-08 12:48:44.270123, amount: 100.0,currency: USD,},
{id: 2020-09-08 12:50:22.818595, amount: 50.0, currency: USD,}]
實際上,我的地圖從此變得越來越大,並且無論如何都有更多的屬性。 我正在嘗試計算相同貨幣的所有金額並將他存儲在另一張地圖中。 結果應該是
[ {currency: MAD , amount:60.0}, {currency: USD, amount:150.0}, {currency: EUR, amount:10.0}, ]
您可以使用列表中的 fold 方法來做到這一點:
var data = [
{'id': '2020-09-08 12:28:55.065818', 'amount': 60.0, 'currency': 'MAD'},
{'id': '2020-09-08 12:48:31.771243', 'amount': 10.0, 'currency': 'EUR'},
{'id': '2020-09-08 12:48:44.270123', 'amount': 100.0, 'currency': 'USD'},
{'id': '2020-09-08 12:50:22.818595', 'amount': 50.0, 'currency': 'USD'}
];
print(data.fold(0, (previousValue, element) => (element['amount'] as double) + previousValue));
希望有幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.