[an error occurred while processing this directive]

Java BigDecimal hashCode example

                         

In this example bigdecimal class hashCode() method working is shown. Method returns integer values, both negative & positive. For every number method generates different hash codes. Method generated hash codes does not match when similar values possess different scales.
Method generates NumberFormatException when it finds any String character value instead of a number value. 

Syntax for using the method: public int hashCode()
System.out.println(bigdecimal_objectName.hashCode()); 
                         or
int i = (this.object).hashCode();

Java_BigDecimal_hashCode.java

import java.math.BigDecimal;
import java.text.NumberFormat;

public class {
  public static void main(String args[]) {

    NumberFormat num = NumberFormat.getInstance();
    num.setMinimumFractionDigits(3);

    BigDecimal buf_0 = new BigDecimal("rose".length()),
    buf_1 = new BigDecimal("india".length());

    System.out.println("BigDecimal object buf_0 value" +
      " :" + buf_0
      "\nBigDecimal object buf_1 value :" + buf_1);
    System.out.println("\nhash code generated for buf_0 " +
      "object value : " + buf_0.hashCode()
      "\nhash code generated for buf_1 object value : "
      + buf_1.hashCode());

    BigDecimal x = new BigDecimal(10.32455666888),
    y = new BigDecimal(10.32455666888),
    ray[] x, y };
    int i = ray[0].hashCode(),
    j = ray[1].hashCode();

    System.out.println("\nhash code generated for x " +
        "object value : " + i);
    System.out.println("hash code generated for y " +
        "object value : : " + j);

    System.out.println("\n");
    boolean evaluate_0 = x.equals(y);
    if (evaluate_0 == true) {
      System.out.println(x.equals(y" : objects x " +
          "& y are equal");
    else
      System.out.println(x.equals(y" : objects x & " +
          "y are not equal");

    x = new BigDecimal(num.format(x));
    x = new BigDecimal(num.format(y));

    System.out.println("\nResult after formating");
    boolean evaluate_1 = x.equals(y);
    if (evaluate_1 == true) {
      System.out.println(x.equals(y" : objects x & " +
          "y are equal");
    else
      System.out.println(x.equals(y" : objects x & y" +
          " are not equal");
  }
}

Download the code

                         

[an error occurred while processing this directive]