flutter 接口返回数据分组
时间: 2023-08-15 17:03:20 浏览: 48
可以将接口返回的数据按照某个属性进行分组,比如按照时间、地区等属性进行分组。以下是一个简单的示例代码:
```dart
class DataModel {
final String name;
final String time;
final String region;
DataModel({this.name, this.time, this.region});
}
List<DataModel> dataList = [
DataModel(name: "A", time: "2021-01-01", region: "Asia"),
DataModel(name: "B", time: "2021-01-02", region: "Europe"),
DataModel(name: "C", time: "2021-01-03", region: "Asia"),
DataModel(name: "D", time: "2021-01-04", region: "Europe"),
DataModel(name: "E", time: "2021-01-05", region: "Asia"),
];
Map<String, List<DataModel>> groupByRegion = {};
dataList.forEach((data) {
if (groupByRegion.containsKey(data.region)) {
groupByRegion[data.region].add(data);
} else {
groupByRegion[data.region] = [data];
}
});
print(groupByRegion);
```
输出结果:
```
{
Asia: [
DataModel(name: A, time: 2021-01-01, region: Asia),
DataModel(name: C, time: 2021-01-03, region: Asia),
DataModel(name: E, time: 2021-01-05, region: Asia)
],
Europe: [
DataModel(name: B, time: 2021-01-02, region: Europe),
DataModel(name: D, time: 2021-01-04, region: Europe)
]
}
```
以上代码将数据按照地区进行了分组,可以根据需要修改代码实现其他属性的分组。