Popular Tutorials
Start Learning JavaCertification Courses
Created with over a decade of experience and thousands of feedback.
Java ArrayList sort()
In this tutorial, we will learn about the Java ArrayList sort() method with the help of examples.
The sort() method sorts the elements in an arraylist according to the specified order.
Example
import java.util.ArrayList;
import java.util.Comparator;
class Main {
public static void main(String[] args) {
// create an ArrayList
ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(7);
numbers.add(3);
numbers.add(9);
numbers.add(-33);
System.out.println("Unsorted ArrayList: " + numbers);
// sort the ArrayList in ascending order
numbers.sort(Comparator.naturalOrder());
System.out.println("Sorted ArrayList: " + numbers);
}
}
// Output: Unsorted ArrayList: [7, 3, 9, -33]
// Sorted ArrayList: [-33, 3, 7, 9]
Syntax of ArrayList sort()
The syntax of the sort() method is:
arraylist.sort(Comparator c)
Here, arraylist is an object of the ArrayList class.
sort() Parameters
The sort() method takes a single parameter.
- comparator - specifies the sort order of the arraylist
sort() Return Values
The sort() method does not return any value. Rather it only changes the order of elements in an arraylist.
Example 1: Sort the ArrayList in Natural Order
import java.util.ArrayList;
import java.util.Comparator;
class Main {
public static void main(String[] args) {
// create an ArrayList
ArrayList<String> languages = new ArrayList<>();
// add elements to ArrayList
languages.add("Python");
languages.add("Swift");
languages.add("C");
languages.add("JavaScript");
System.out.println("Unsorted ArrayList: " + languages);
// sort the ArrayList in ascending order
languages.sort(Comparator.naturalOrder());
System.out.println("Sorted ArrayList: " + languages);
}
}
Output
Unsorted ArrayList: [Python, Swift, C, JavaScript] Sorted ArrayList: [C, JavaScript, Python, Swift]
In the above example, we have used the sort() method to sort the arraylist named languages. Notice the line,
languages.sort(Comparator.naturalOrder());
Here, the naturalOrder() method of the Java Comparator Interface specifies that elements are sorted in natural order (i.e. ascending order).
The Comparator interface also provides a method to sort elements in descending order. For example,
Example 2: Sort the ArrayList in Reverse Order
import java.util.ArrayList;
import java.util.Comparator;
class Main {
public static void main(String[] args) {
// create an ArrayList
ArrayList<String> languages = new ArrayList<>();
// add elements to ArrayList
languages.add("Python");
languages.add("Swift");
languages.add("C");
languages.add("JavaScript");
System.out.println("Unsorted ArrayList: " + languages);
// sort the ArrayList in a reverse order
languages.sort(Comparator.reverseOrder());
System.out.println("Sorted ArrayList: " + languages);
}
}
Output
Unsorted ArrayList: [Python, Swift, C, JavaScript] Sorted ArrayList: [Swift, Python, JavaScript, C]
Here, the reverseOrder() method of the Comparator interface specifies that elements are sorted in reverse order (i.e. descending order).
Note: The Collections.sort() method is the more convenient method for sorting an arraylist.