正在从字典中获取值

本文关键字:获取 字典 | 更新日期: 2023-09-27 18:27:46

嗨,我用的字典如下。

Dictionary<int, List<double>> conditionbase = new Dictionary<int, List<double>>();

在这本字典中,我存储了基于columnindex的最大值和最小值作为关键字。

现在我需要获得基于这些最大值和最小值的特定列索引?

正在从字典中获取值

首先假设最小值和/或最大值对于给定的列索引不是唯一的,然后您想找到具有特定最小值和最大值的列

因此,忽略双重平等的琐碎事务,尝试以下方法:

var min = 1.0;
var max = 100.0
var columns = conditionbase.Where(x => x.Value.Max() == max && x.Value.Min() == min).Select(y => y.Key).ToArray();

或者,如果您的最大值和最小值在索引中:

var columns = conditionbase.Where(x => x.Value[1] == max && x.Value[0] == min).Select(y => y.Key).ToArray();

注意:双打的相等比较可能很难。

如果你的列表只有一个最大值和一个最小值,那么考虑使用一个类型,比如:

public class Limits
{
   double Minimum {get; set;}
   double Maximum {get; set; }
}

然后。。。你的字典变成:

var conditionbase = new Dictionary<int, Limits>();

好多了。有很多选择。