Java Design Pattern
Introduction to Java 10
Introduction to Java 11
Introduction to Java 12

JAVA Comparator Interface

  • • Comparator interface is used to define our own sorting(customized sorting).
  • • It is present in java.util package.
  • • It defines two methods, such as compare() and equals().

The general form is:
public int compare(Object ob1, Object ob2)

here the compare() method having 3 cases, like:
Returns -ve if ob1 have to come before ob2.
Returns +ve, if ob1 have to come after ob2.
Returns 0, if ob1 and ob2 are equal.

public boolean equals()

  • • Whenever we are implementing Comparator interface, compulsory we should provide implementation for compare() method.
  • • Implementing equals() method is optional, because it is already available in every java class from Object class through inheritance.

Example

ComparatorDemo.java

package java8s; 
import java.util.*; 
class ComparatorDemo 
{ 
	public static void main(String[] args) 
	{ 										 
		TreeSet t=new TreeSet(new MyComparator()); 
		t.add(90); 
		t.add(20); 
		t.add(0); 
		t.add(50); 
		System.out.println(t); 
	} 
} 	 
class MyComparator implements Comparator 
{ 
	public int compare(Object ob1, Object ob2) 
	{ 
		Integer i1=(Integer)ob1; 
		Integer i2=(Integer)ob2; 

		if(i1 < i2)
		{ 
			return +1; 
		} 
		else 
		if(i1>i2) 
		{ 
			return -1; 
		} 
		else 
		{ 
			return 0; 
		} 
	} 
}

Output

[90, 50, 20, 0]

About the Author



Silan Software is one of the India's leading provider of offline & online training for Java, Python, AI (Machine Learning, Deep Learning), Data Science, Software Development & many more emerging Technologies.


We provide Academic Training || Industrial Training || Corporate Training || Internship || Java || Python || AI using Python || Data Science etc






 PreviousNext