top of page
Search
Writer's pictureAbhinaw Tripathi

Using Comparator to Sort an Array Java


Using Comparator to Sort an Array

It offers an interface , called Comparator that is useful to impose a total ordering on a collection of elements.It can be used to sort the elements of an array into ascending order or descending order.

interface Comparator<T>,where T is generic type

Program Sample:

/**

*

*/

package com.collectionpack;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.Arrays;

import java.util.Comparator;

/**

* @author Abhinaw.Tripathi

*

*/

class Ascending implements Comparator<Integer>

{

@Override

public int compare(Integer o1, Integer o2)

{

return o1.compareTo(o2);

}

}

class Desending implements Comparator<Integer>

{

@Override

public int compare(Integer o1, Integer o2)

{

return o1.compareTo(o2);

}

}

public class ComparatorApp

{

public static void main(String[] args) throws NumberFormatException, IOException

{

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

System.out.println("How many elements? ");

int size=Integer.parseInt(br.readLine());

Integer arr[] =new Integer[size];

for(int i=0;i<size;i++)

{

System.out.println("Eneter int: ");

arr[i]=Integer.parseInt(br.readLine());

}

Arrays.sort(arr, new Ascending());

System.out.println("Sorted in asending order");

display(arr);

Arrays.sort(arr,new Desending());

System.out.println("sorted in desending order");

display(arr);

}

private static void display(Integer[] arr)

{

for(Integer i:arr)

System.out.println(i + "\t");

}

}

Output:

How many elements?

5

Eneter int:

26

Eneter int:

89

Eneter int:

69

Eneter int:

78

Eneter int:

456

Sorted in asending order

26

69

78

89

456

sorted in desending order

456

89

78

69

26

10 views0 comments

Recent Posts

See All
bottom of page