Java.lang.String.compareTo()

There are three variants of compareTo() method. This article depicts about all of them, as follows
1. int compareTo(Object obj) : This method compares this String to another Object.

Syntax : 
int compareTo(Object obj)
Parameters : 
obj : the Object to be compared.
Return Value : 
The value 0 if the argument is a string lexicographically equal to this string;
a value less than 0 if the argument is a string lexicographically greater than this string;
and a value greater than 0 if the argument is a string lexicographically less than this string.
filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to demonstrate the
// working of compareTo()
public class Cmp1 {
public static void main(String args[])
    {
  
        // Initializing Strings
        String str1 = "geeksforgeeks";
        String str2 = new String("geeksforgeeks");
        String str3 = new String("astha");
  
        // Checking if geeksforgeeks string
        // equates to geeksforgeeks object
        System.out.print("Difference of geeksforgeeks(obj) and geeksforgeeks(str) : ");
        System.out.println(str1.compareTo(str2));
  
        // Checking if geeksforgeeks string
        // equates to astha object
        System.out.print("Difference of astha(obj) and geeksforgeeks(str) : ");
        System.out.println(str1.compareTo(str3));
    }
}

chevron_right


Output :

Difference of geeksforgeeks(obj) and geeksforgeeks(str) : 0
Difference of astha(obj) and geeksforgeeks(str) : 6

2. int compareTo(String anotherString) : This method compares two strings lexicographically.

Syntax : 
int compareTo(String anotherString)
Parameters : 
anotherString :  the String to be compared.
Return Value :  
The value 0 if the argument is a string lexicographically equal to this string;
a value less than 0 if the argument is a string lexicographically greater than this string; 
and a value greater than 0 if the argument is a string lexicographically less than this string.
filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to demonstrate the
// working of compareTo()
public class Cmp2 {
public static void main(String args[])
    {
  
        // Initializing Strings
        String str1 = "geeksforgeeks";
        String str2 = "geeksforgeeks";
        String str3 = "astha";
  
        // Checking if geeksforgeeks string
        // equates to geeksforgeeks string
        System.out.print("Difference of geeksforgeeks(str) and geeksforgeeks(str) : ");
        System.out.println(str1.compareTo(str2));
  
        // Checking if geeksforgeeks string
        // equates to astha string
        System.out.print("Difference of astha(str) and geeksforgeeks(str) : ");
        System.out.println(str1.compareTo(str3));
    }
}

chevron_right


Output:

Difference of geeksforgeeks(str) and geeksforgeeks(str) : 0
Difference of astha(str) and geeksforgeeks(str) : 6

3. int compareToIgnoreCase(String str) : This method compares two strings lexicographically, ignoring case differences.



Syntax :
int compareToIgnoreCase(String str)
Parameters : 
str : the String to be compared.
Return Value : 
This method returns a negative integer, zero, or a positive integer as
the specified String is greater than, equal to, or less than this String,
ignoring case considerations.
filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to demonstrate the
// working of compareToIgnoreCase()
public class Cmp3 {
public static void main(String args[])
    {
  
        // Initializing Strings
        String str1 = "geeks";
        String str2 = "gEEkS";
  
        // Checking if geeksforgeeks string
        // equates to geeksforgeeks string
        // case sensitive
        System.out.print("Difference of geeks and gEEkS (case sensitive) : ");
        System.out.println(str1.compareTo(str2));
  
        // Checking if geeksforgeeks string
        // equates to astha string
        // case insensitive
        // using compareToIgnoreCase()
        System.out.print("Difference of geeks and gEEkS (case insensitive)  : ");
        System.out.println(str1.compareToIgnoreCase(str2));
    }
}

chevron_right


Output:

Difference of geeks and gEEkS (case sensitive) : 32
Difference of geeks and gEEkS (case insensitive)  : 0

This article is contributed by Astha Tyagi. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

Attention reader! Don’t stop learning now. Get hold of all the important Java and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.




My Personal Notes arrow_drop_up