我有一个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做的事情吗?
如果没有,有人可以提供一些指示来完成这个?
我假设你想要以下内容:
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)
这将计算字符串中的所有字符.