如何使用LINQ过滤Arraylist? [英] How to Filtering Arraylist using LINQ?

查看:120
本文介绍了如何使用LINQ过滤Arraylist?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有如下所示的arraylist:



We have arraylist like below:

ArrayList list = new ArrayList();
list[0]=""mdmf4": {"min_price": 39.72,"trans": "Manual"}";
list[1]=""mdmf4": {"min_price": 40.72,"trans": "Manual"}";
list[2]=""mdmf5": {"min_price": 39.56,"trans": "Manual"}";
list[3]=""mdmf5": {"min_price": 22.44,"trans": "Manual"}";
list[4]=""maaf4": {"min_price": 71.82,"trans": "Manual"}";
list[5]=""maaf4": {"min_price": 39.00,"trans": "Manual"}";







我想以最低价格过滤aaraylist,结果如下:






I want to filter aaraylist with minimum price and result looks like :

list[0]=""mdmf4": {"min_price": 39.72,"trans": "Manual"}";
list[1]=""mdmf5": {"min_price": 22.44,"trans": "Manual"}";
list[2]=""maaf4": {"min_price": 39.00,"trans": "Manual"}";





如何不使用Loop?是否可以使用LINQ?



How to do without using Loop? Is it possible with LINQ?

推荐答案

首先:我无法理解您的列表。这应该是一个JSON样式对象吗?如果是这样,那就很糟糕了。

我将假设一个具有id和值的POCO这个例子。



你需要一个groupby关注一分钟:



First: I cannot make much sense of your list. Is that supposed to be a JSON style object? if so then it is badly formed.
I will assume a POCO with id and value for this example.

You need a groupby followed by a min:

var result = list
            .GroupBy(l=>l.id)
            .Select(g=>new {id=g.key,value = g.min(l=>l.value);





这将返回带有id和value的匿名类型。如果你需要,你可以选择一个新定义的POCO类型。



this will return an anon type with id and value. You can select a new defined POCO type if that's what you need.


这篇关于如何使用LINQ过滤Arraylist?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆