我有一个字符串列表,在这个列表中有一些字符串重复两次或更多。
我想计算它们并将它们添加到字典中:
List<string> lst = { 'A' , 'B' , 'B' , 'c' , 'c' , 'c' };
它会转到这样的字典:
A , 1
B , 2
c , 3
我该怎么做?!
答案 0 :(得分:3)
var dict = lst.GroupBy(x => x).ToDictionary(x => x.Key, x => x.Count());
如果您想以不区分大小写的方式执行此操作
var dict = lst.GroupBy(x => x, StringComparer.InvariantCultureIgnoreCase )
.ToDictionary(x => x.Key, x => x.Count());
答案 1 :(得分:1)
这样的事情:
List<Char> lst = new { // Note "Char"
'A' , 'B' , 'B' , 'c' , 'c' , 'c' };
var dictionary = list
.GroupBy(item => item)
.ToDictionary(chunk => chunk.Key,
chunk => chunk.Count());