gpt4 book ai didi

c# - 从对象列表中获取具有最大值的对象的最有效方法

转载 作者:太空宇宙 更新时间:2023-11-03 19:59:00 27 4
gpt4 key购买 nike

我有一个名为条目的对象。它在 float 中有 min 和 max,在 string 中有 fileName。这些对象存储在列表中

List<Entry> minMaxList = new List<Entry>();

我需要找到一个具有最高值和最小值的对象及其文件名。

如果我有这样的数组

       Entry1                    Entry2                  Entry3
min max filename min max filename min max filename
| 2 | 120 | file1.txt | | 2 | 150 | file1.txt | | 5 | 150 | file1.txt |

我想得到值最小的对象是Entry1和Entry2,值最大的对象是Entry2和Entry3

我试过这个:

var max =  minMaxList.Max(r => r.getMax())

效果很好,但它返回给我一个单一的值,没有关于它来自哪里的任何其他信息。我需要整个对象,或者至少需要这个值所在的文件名。我想知道它是否可以在单个命令中完成,或者我是否必须再次迭代列表并根据之前选择的最小值和最大值找到所有条目。

最佳答案

你总是可以过滤可枚举的而不是只让最大值通过:

var maxvalue = minMaxList.Max(w => w.getMax());
var maxitems = minmaxlist.Where(w => w.getMax() == maxvalue);

关于c# - 从对象列表中获取具有最大值的对象的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30507307/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com