Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 701251
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T03:35:20+00:00 2026-05-14T03:35:20+00:00

I have an object that has a multi-part key and I am struggling to

  • 0

I have an object that has a multi-part key and I am struggling to find a suitable way override GetHashCode. An example of what the class looks like is.

public class wibble{
   public int keypart1 {get; set;}
   public int keypart2 {get; set;}
   public int keypart3 {get; set;}
   public int keypart4 {get; set;}
   public int keypart5 {get; set;}
   public int keypart6 {get; set;}
   public int keypart7 {get; set;}
   public single value {get; set;}
}

Note in just about every instance of the class no more than 2 or 3 of the keyparts would have a value greater than 0.

Any ideas on how best to generate a unique hashcode in this situation?

I have also been playing around with creating a key that is not unique, but spreads the objects evenly between the dictionaries buckets and then storing objects with matched hashes in a List<> or LinkedList<> or SortedList<>.
Any thoughts on this?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T03:35:21+00:00Added an answer on May 14, 2026 at 3:35 am

    The simplest method is to use XOR. A slightly better method is the one recommended by Josh Bloch in Effective Java. See here.

    Regarding your use of the hash code: it is expected that there will sometimes be collisions and this should not cause problems (having too many collisions will make your code slow, but it should still work). If you can have multiple values for the same key you should consider using something like a Dictionary<Foo, List<Bar>> or a Lookup. If the hashes of the keys happen to collide but the keys are different then you don’t need to do anything special. Dictionary handles this situation for you automatically, as long as your implementation of Equals is correct.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have an object that has a child collection: class Person { public string
When you have a multi-tiered object like a json object that say has 3
I have two tables: object that has object_id column and avalues that have object_id
I have an object that has pairs of replacement values used for simple encoding
I have an object that has properties, but when I try to access them,
I have an object that has 3 separate Dictionaries. The value parameter for each
Lets say I have an object that has stringProp1, stringProp2. I wish to store
I have a seat object that has a car object that has a owner
I have a domain object that has been auto generated for me by MyGeneration.
Suppose I have a customer object that has all of the standard customer properties

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.