この質問のタイトルは少し奇妙なので、ありがたいです。GroupByが条件と数値を返す
私が達成したいのは、値のが3の場合にのみ、numberにgroupbyを使用することです。
例として、次の値の配列があります。
int[] nums= new int[] { 1, 1, 1, 3, 1 };
私はこの
var vals = dice.GroupBy(t => t).Select(p => new { Value = p.Key, Count = p.Count() }).ToList();
ようNUMS上でグループをすれば、それは戻りますが、次の
{Value = 1, Count = 4},
{Value = 3, Count = 1}
と私が実際に欲しい本であるだろう。
{Value = 1, Count = 3},
{Value = 1, Count = 1}
{Value = 3, Count = 1}
これを達成するためにGroupByメソッドを使用できますか、またはアプローチが異なる必要がありますか?
'Value'の値はもともとグループのキーだったものです。 'GroupBy'の本質は、あなたが同じキーを一つの列挙に二度出現させないことです。 – Abion47
わかりません。 '{1,1,1,1,1,1} '(7つのもの)から期待される出力は何ですか? –