Prev Next

Java / Object, Class and Package

Good implementation of hashCode method in Java.

As per the expert's recommendation, the below steps are listed.

  • Create a int hashcodeResult and assign it a non-zero value.
  • For every field f tested in the equals method,calculates its hash code value c using the following.
    • If the field f is a boolean: calculate (f ? 0 : 1);
    • If the field f is a byte, char, short or int: calculate (int)f;
    • field f is a long, calculate (int)(f ^ (f >>> 32));
    • field f is a float, calculate Float.floatToIntBits(f);
    • field f is a double, calculate Double.doubleToLongBits(f) and use the long value;
    • If the field f is an object: Use the result of the hashCode() method or 0 if f == null;
    • If the field f is an array, consider every field as separate element and calculate the hash value in a recursive fashion and combine the values.
  • Combine the hash value c with hashcodeResult. hashcodeResult=37+c+ hashcodeResult.
  • Return the value of hashcodeResult.

It's right time to invest in Cryptocurrencies Dogecoin! Earn free bitcoins up to $250 now by signing up.

Earn bitcoins upto $250 (free), invest in other Cryptocurrencies when you signup with blockfi. Use the referral link: Signup now and earn!

Using BlockFi, don't just buy crypto - start earning on it. Open an interest account with up to 8.6% APY, trade currencies, or borrow money without selling your assets.


Join CoinBase! We'll both receive $10 in free Bitcoin when they buy or sell their first $100 on Coinbase! Available in India also. Use the referral Join coinbase!


Invest now!!! Get Free equity stock (US, UK only)!

Use Robinhood app to invest in stocks. It is safe and secure. Use the Referral link to claim your free stock when you sign up!.

The Robinhood app makes it easy to trade stocks, crypto and more.


Webull! Receive free stock by signing up using the link: Webull signup.

More Related questions...

How to implement cloning? Object Cloning. Can a Java source file have more than one class declaration? Example of a final class in Java API. What is the data type of System.out? Can we have two classes with same name under the same package? Can we have class name same as the interface name under the same package? What is the base class of all classes? Could a Java class file exists even without filename and only extension(.java)? Anonymous class. Difference Between ClassNotFoundException & NoClassDefFoundError. ClassNotFoundException Example. Dynamic class loading. Difference: Class.forName() vs ClassLoader.loadClass(). Which class implements clone method- Cloneable or Object in Java? Why Custom ClassLoader is required in Java? How does Java ClassLoader Work? When are class static variables loaded in memory in Java? Describe the principle of Java class loader. When a class is loaded in Java? When a class is initialized in Java? What are the rules of class initialization in Java? What is a Local class in Java? Different type of cloning in Java. Explain Shallow copy in Java. Explain deep copy in Java. Difference between shallow and deep copy in Java. What is Serialization in Java? Explain De-serialization in Java. Difference between readObject and readResolve in Java serialization. Why is Class.newInstance() is discouraged to use? Difference between Static block and initializer block in Java. What is static class in Java? Role of Runtime and System class in Java. Can an anonymous class have constructor? What are the Object class methods? Can you override Object class getClass method? When shallow object copy is preferred? How to implement equals method correctly? Good implementation of hashCode method in Java. Java equals() vs. compareTo() contract. Can two objects which are not equal have the same hashCode? What happens when equals() is not consistent with compareTo() method? Difference between instanceof and getClass() method for checking type inside equals.
Show more question and Answers...

Variable

Comments & Discussions