Сравнение пар ключ-значение только на основе ключа

Привет, ребята, я застрял в чем-то. Я создаю список пар значений ключа примерно так

var list = new List<KeyValuePair<string, int>>();
list.Add(new KeyValuePair<string, int>("C2", 1));
list.Add(new KeyValuePair<string, int>("C2", 2));
list.Add(new KeyValuePair<string, int>("A1", 4));
list.Add(new KeyValuePair<string, int>("B1", 5));
list.Add(new KeyValuePair<string, int>("B1", 6));

Теперь, после добавления элементов. Я хочу отсортировать список по ключу. я использовал этот код для сортировки приведенного выше списка

list.Sort(new KvpKeyComparer<string, int>());

Вывод что-то вроде этого

[A1, 4]
[B1, 5]
[B1, 6]
[C2, 1]
[C2, 2] 

Теперь я хочу сравнить значение последнего ключа, который находится в индексе 4, то есть [c2,2] с [C2,1], используя условие if. Но я хочу сравнить только c2 с c2 n, а не всю пару [c2,2] до [C2,1]. на основе этого я буду выполнять некоторые из своих операций. Затем после первого сравнения я сравню индекс 3 с индексом, т.е. [c2,1] с [b1,6]. сравнение должно быть между C2 и B1. т.е. оно должно проверять условие if, если (C2 = B1) .. я не могу этого достичь .. может ли кто-нибудь мне помочь. я пытался. я новичок, так что помогите мне


person user1609216    schedule 04.09.2014    source источник
comment
Домашнее задание? Это не похоже на описание операций, выполняемых в середине поэлементных сравнений.   -  person sq33G    schedule 04.09.2014
comment
Очевидно, я не понимаю, что вы пытаетесь сделать. Почему вы делаете сравнения, которые вы описываете, и почему вы не можете делать сравнения?   -  person Guffa    schedule 04.09.2014


Ответы (2)


Гораздо проще использовать LINQ для упорядочивания:

var orderedList = list.OrderBy(kvp => kvp.Key).ThenBy(kvp => kvp.Value).ToList();
person toadflakz    schedule 04.09.2014
comment
извините, я не мог получить его. - person user1609216; 04.09.2014

person    schedule
comment
Большое спасибо. Это сработало. Еще один запрос, если вы можете ответить. Теперь он выполняется в соответствии с логической частью. Я имею в виду, если условие выполнено. Я хочу добавить и ключ, и значение в другой список пар значений ключа. Как я могу это сделать? - person user1609216; 04.09.2014