Dart:如何获取地图列表中所有列表值的总长度



我有这个:

final data = [
{
'name': 'Team A',
'team': ['Klay Lewis', 'Ehsan Woodard', 'River Bains']
},
{
'name': 'Team B',
'team': ['Toyah Downs', 'Tyla Kane']
},
{
'name': 'Team C',
'team': [
'Jacky Chan',
'Yalor Rowds',
'Tim Bourla',
'Levis Strauss',
'Jane Smow'
]
}
];

我想找到最快的方法得到所有团队成员的总数。在上面的例子中,它将是3+2+5=10个总成员。

真实世界的数据将有数千个团队,因此需要最快的方式。

fold将完成任务。

final int totalLength = data.fold(0, (sum, obj) => sum + obj['team'].length);
import 'package:collection/collection.dart';
const data = [...];
void main(List<String> args) {
var members = data.map((e) => (e['team'] as List).length).sum;
print(members);
}

最新更新