Mega Code Archive

 
Categories / Java / Data Type
 

Floating pioint comparisons

class MainClass {   public static void main(String[] args) {     double num1 = -0.0;     double num2 = 0.0;     double sqrPos = Math.sqrt(4.0);     double sqrNeg1 = Math.sqrt(-4.0);     double sqrNeg2 = Math.sqrt(-9.0);     System.out.println("Using == to compare 0.0 and -0.0 ");     if (num1 == num2)       System.out.println("numbers are equal");     else       System.out.println("numbers are not equal");     Double n1 = new Double(num1);     Double n2 = new Double(num2);     System.out.println("Using equals() method to compare 0.0 and -0.0 ");     if (n1.equals(n2))       System.out.println("numbers are equal");     else       System.out.println("numbers are not equal");     Double sp1 = new Double(sqrPos);     Double sn1 = new Double(sqrNeg1);     Double sn2 = new Double(sqrNeg2);     System.out.println("Using equals() method to compare two NaNs ");     if (sn1.equals(sn2))       System.out.println("NaNs are equal");     else       System.out.println("NaNs are not equal");   } }