[英]How to get keys and values from a dictionary
所以我有一个像这样设置的字典:
Dictionary<DateTime, List<Double>>
日期和时间是我从excel电子表格中提取的月份,然后我的整数就是美元金额。 列如下所示:
7/1/10 | 6/1/10
----------------
100.00 | 90.00
----------------
3.00 | 20.00
----------------
35.00 | 10.00
依此类推,大约持续6个月。 我需要获取这些键和值。 我需要将其放入数据库。 例如,对于值100.00、3.00、35.00,它们都与月份7/1/10协调(第一个键下有3个值,依此类推)。
有人可以告诉我如何遍历这些东西吗? 当我调试字典时,可以正确输入所有信息,但无法将其撤回。
只需直接在嵌套循环中对其进行迭代
Dictionary<DateTime, List<Double>> map;
foreach (var pair in map) {
DateTime dt = pair.Key;
foreach (double value in pair.Value) {
// Now you have the DateTime and Double values
}
}
foreach(KeyValuePair<DateTime,List<Double> pair in dictionaryName){
DateTime dt = pair.Key;
List<Double> doubleList = pair.Value;
//With this method you now can step through each key value pair
}
您可以对单个值执行此操作(如果您知道键)
List<double> values = myDictionary[someDateValue];
您可以使用foreach
遍历所有密钥对
foreach(var pair in myDictionary)
{
DateTime keyValue = pair.Key;
List<double> valueValue = pair.Value;
}
或使用linq:
var myDict = new Dictionary<DateTime, List<Double>>();
var julyValues= myDict.Where(r => r.Key == new DateTime(2010, 7, 1))
.Select(r => r.Value);
或使用groupby:
var groupValues= myDict.GroupBy(r => r.Key)
.Select(grp =>
new { grp.Key,
values = grp.Select(r => r.Value)
}
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.