How to create a Dictionary with a Complex Type as a Key?

Yes you can. Dictionary can be created with a Complex Type as a Key and a simple type as a value.

Yes you can. Dictionary can be created with a Complex Type </T/> as a Key and a simple type as a value.

For example:

class MyClass { 
  public MyClass(int id) { 
    this.Id = id 
  }
  public int Id { get; set; }
}

Dictionary<MyClass, int> dict = new Dictionary<MyClass, int>();
dict.Add(new MyClass(1), 1);
dict.Add(new MyClass(2), 2);
dict.Add(new MyClass(3), 3);

The above code works without any issues. Because each object holds a different reference and hence the Keys are all different w.r.t the Dictionary

Join the Newsletter

Subscribe to get our latest content by email.
    We won't send you spam. Unsubscribe at any time.
    Ram
    Ram

    I'm a full-stack developer and a software enthusiast who likes to play around with cloud and tech stack out of curiosity. You can connect with me on Medium, Twitter or LinkedIn.

    Join the Newsletter

    Subscribe to get our latest content by email.
    We won't send you spam. Unsubscribe at any time.
    Privacy Overview
    Referbruv

    This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

    Strictly Necessary Cookies

    Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

    3rd Party Cookies

    This website uses Google Analytics to collect anonymous information such as the number of visitors to the site, and the most popular pages.

    Keeping this cookie enabled helps us to improve our website.