C# 数组 合并同类项

2025-05-22 05:28:40
推荐回答(1个)
回答1:

            List> array = new List> { 
                new List{1, 40, 2},
                new List{1 ,40 ,3},
                new List{1 ,70, 7},
                new List{1, 90, 4},
                new List{2 ,40, 1},
                new List{2 ,40, 4}
            };           

            var list = from a in array
                       group a by new { Item1 = a[0], Item2 = a[1] } into g
                       select new { g.Key.Item1, g.Key.Item2, Item3 = g.Sum(s => s[2]) };
            foreach (var item in list)
            {
                Console.WriteLine(item.Item1 + "\t" + item.Item2 + "\t" + item.Item3);
            }

我个人推荐使用List>而非List>这样避免索引超出范围的问题

至于你用的List>这字符串根本没发计算,还得转换成数值类型