如何比较数据字典中的相邻值

时间:2016-06-20 18:01:51

标签: c# .net dictionary

如何在数据字典中获得值(i) - 值(i-1)(或比较相邻)?我需要标记同一字典中相同的adjecent值

3 个答案:

答案 0 :(得分:3)

字典无序。其中的物品没有位置,因此,没有“邻近的”物品的位置。项目

答案 1 :(得分:1)

int? lastValue = null;
int diff;
foreach( KeyValuePair<int, int> kvp in myDictionary )
{
    if(lastVaue != null) 
        diff = kvp.value - lastValue;
    lastValue = kvp.value;
}

如其他foreach(GetEnumerator())所述,在词典中是松散的 如果您想订购,您应该使用另一个系列 OrderedDictionary

如果订购了钥匙,我想你可以使用
myDictionary.OrderBy(x =&gt; x.Key)

答案 2 :(得分:1)

基本上,您不应该使用常规字典来执行此操作。邻接/索引不是普通字典的概念。如果你真的需要什么,请使用OrderedDictionary,它是某种混合数组/字典。