Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,948 questions

51,890 answers

573 users

How to use KeyValuePair to compare a list by key and by value in C#

1 Answer

0 votes
using System;
using System.Collections.Generic;

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static int CompareKey(KeyValuePair<string, int> x, KeyValuePair<string, int> y)
        {
            return x.Key.CompareTo(y.Key);
        }

        static int CompareValue(KeyValuePair<string, int> x, KeyValuePair<string, int> y)
        {
            return x.Value.CompareTo(y.Value);
        }

        static void Main(string[] args)
        {
            var list = new List<KeyValuePair<string, int>>();

            list.Add(new KeyValuePair<string, int>("java", 9));
            list.Add(new KeyValuePair<string, int>("c#", 8));
            list.Add(new KeyValuePair<string, int>("php", 6));
            list.Add(new KeyValuePair<string, int>("python", 7));

            list.Sort(CompareKey);

            foreach (var pair in list)
            {
                Console.WriteLine(pair);
            }
            Console.WriteLine();

            list.Sort(CompareValue);

            foreach (var pair in list)
            {
                Console.WriteLine(pair);
            }
        }
    }
}


/*
run:
     
[c#, 8]
[java, 9]
[php, 6]
[python, 7]

[php, 6]
[python, 7]
[c#, 8]
[java, 9]
 
*/

 



answered Dec 21, 2016 by avibootz

Related questions

1 answer 92 views
2 answers 224 views
224 views asked Aug 24, 2018 by avibootz
1 answer 101 views
1 answer 73 views
1 answer 79 views
79 views asked Apr 29, 2023 by avibootz
1 answer 105 views
1 answer 127 views
...