Flutter & Dart:计算列表中每个元素的出现次数

在使用 Dart 和 Flutter 时,可能会出现您想要计算给定列表中每个元素的出现次数的情况。下面的简单示例将演示如何做到这一点:

void main() {
// this list contains both strings and numbers
final List myList = [
'blue',
'red',
'amber',
'blue',
'green',
'orange',
'red',
'blue',
'pink',
'amber',
'blue',
123,
123,
234
];

// 此映射的键和值分别是列表中的元素及其出现的次数
final Map counts = {};

//遍历列表
// 如果一个元素第一次出现,设置为map的一个key,对应的值为1
// 如果一个元素已经用于某个键,则其对应的值加 1
myList.map((e) => counts.containsKey(e) ? counts[e]++ : counts[e] = 1);

// 打印结果
print(counts);
}

输出:

{
blue: 4,
red: 2,
amber: 2,
green: 1,
orange: 1,
pink: 1,
123: 2,
234: 1
}