如何解决Flutter / Dart如何分组按地图列表
对于按日期分组:
import "package:collection/collection.dart";
main(List<String> args) {
var data = [
{"title": 'Avengers', "release_date": '10/01/2019'},
{"title": 'Creed', "release_date": '10/01/2019'},
{"title": 'Jumanji', "release_date": '30/10/2019'},
];
var newMap = groupBy(data, (obj) => obj['release_date']);
print(newMap);
}
release_date
要从每个地图条目中删除密钥:
var newMap = groupBy(data, (obj) => obj['release_date']).map(
(k, v) => MapEntry(k, v.map((item) { item.remove('release_date'); return item;}).toList()));
更改密钥:
var newMap = groupBy(data, (obj) => obj['release_date']).map(
(k, v) => MapEntry(k, v.map((item) => {'name': item['title']}).toList()));
解决方法
我有这张地图清单。
[
{title: 'Avengers',release_date: '10/01/2019'},{title: 'Creed',release_date: '10/01/2019'}
{title: 'Jumanji',release_date: '30/10/2019'},]
我想编写一个这样的代码来对电影列表进行分组release_date
。
[
{
"10/01/2019": [
{
"title": "Avengers"
},{
"title": "Creed"
}
]
},{
"30/10/2019": [
{
"title": "Jumanji"
}
]
}
]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。