首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列表组或排序

列表组或排序
EN

Stack Overflow用户
提问于 2019-03-30 15:26:04
回答 1查看 96关注 0票数 0

我试图在Xamarin上使用c#程序对列表进行分组。

列出EList;

样本数据是

ExpList(项目,dop,值)

杂货店01/03/2019 1000

04/03/2019 250

杂货店01/04/2019 500

电影02/03/2018 550

02/05/2019 550

我想按项目名称对列表进行分组,并需要计算其总价值。即。

将列表分组

杂货店01/03/2019 1000

杂货店01/04/2019 500

04/03/2019 250

02/05/2019 550

电影02/03/2018 550

计算

我想要一些小组的信息,如下所示

组项目总数为3

食品杂货数乘以2,值为1500。

衣服数量2倍,价值800件

电影次数1和值为550

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-01 05:40:42

请参阅以下代码

代码语言:javascript
复制
public class People
{
    public string Name { get; set; }
    public string Date { get; set; }
    public double Value { get; set; }
}


List<People> peopleList = new List<People>()
        {
            new People { Name="grocery ",Date="01/03/2019",Value=1000 },
            new People { Name="clothes ",Date="02/03/2019",Value=250 },
            new People { Name="grocery ",Date="04/03/2019",Value=500 },
            new People { Name="clothes ",Date="01/02/2019",Value=550 },
            new People { Name="movie ",Date="03/03/2019",Value=550 },

        };


var groupList = peopleList.GroupBy(x => x.Name).Select(x => new { name = x.Key,Total=x.Sum(y=>y.Value),Num=x.Distinct().Count() }).Distinct().ToList();

Console.WriteLine("Total group Items is "+groupList.Count() );

foreach(var item in groupList)
{
  Console.WriteLine(item.name + " Number of times "+ item.Num + " and Value is " + item.Total);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55432924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档