每列的计数值

Bax*_*ter 0 c# linq string

我有一个List每个包含字符串xvalue的Object:

Object.xvalue = "112"  
Object.xvalue = "332"  
Object.xvalue = "213" 
Run Code Online (Sandbox Code Playgroud)

我想创建一个包含每列计数的新List:

对象#1:(1,3,2)

 int var1 = 1  
 int var2 = 1  
 int var3 = 1  
Run Code Online (Sandbox Code Playgroud)

对象#2:(1,3,1)

 int var1 = 2  
 int var2 = 0  
 int var3 = 1
Run Code Online (Sandbox Code Playgroud)

对象#3:(2,2,3)

  int var1 = 0  
  int var2 = 2  
  int var3 = 1 
Run Code Online (Sandbox Code Playgroud)

这是我用LINQ做的事情吗?
如果没有,有人可以提供一些指示来完成这个?

Vla*_*lad 5

我假设你想要以下内容:

var counts = list.Select(s => new
                 {
                     var1 = s.Count(c => c == '1'),
                     var2 = s.Count(c => c == '2'),
                     var3 = s.Count(c => c == '3')
                 });
Run Code Online (Sandbox Code Playgroud)

对于可扩展以检测所有可能值的解决方案,您可能需要以下内容:

var counts = list.Select(s => s.GroupBy(c => c)
                               .ToDictionary(g => g.Key, g => g.Count()));
Run Code Online (Sandbox Code Playgroud)

这将计算字符串中的所有字符.