Java.lang.Float.compareTo() Method


The java.lang.Float.compareTo() method compares two Float objects numerically. There are two ways in which comparisons performed by this method differ from those performed by the Java language numerical comparison operators (<, <=, ==, >= >) when applied to primitive float values −

  • Float.NaN is considered by this method to be equal to itself and greater than all other float values (including Float.POSITIVE_INFINITY).
  • 0.0f is considered by this method to be greater than -0.0f.


Following is the declaration for java.lang.Float.compareTo() method

public int compareTo(Float anotherFloat)


anotherFloat − This is the float to be compared.

Return Value

This method returns the value 0 if anotherFloat is numerically equal to this Float; a value less than 0 if this Float is numerically less than anotherFloat; and a value greater than 0 if this Float is numerically greater than anotherFloat.




The following example shows the usage of java.lang.Float.compareTo() method.

package com.tutorialspoint;

import java.lang.*;

public class FloatDemo {

   public static void main(String[] args) {

      // compares two Float objects numerically
      Float obj1 = new Float("10.2");
      Float obj2 = new Float("10.20");
      int retval =  obj1.compareTo(obj2);
      if(retval > 0) {
         System.out.println("obj1 is greater than obj2");
      } else if(retval < 0) {
         System.out.println("obj1 is less than obj2");
      } else {
         System.out.println("obj1 is equal to obj2");

Let us compile and run the above program, this will produce the following result −

obj1 is equal to obj2