English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Basic Tutorial

Java Process Control

Java array

Java object-oriented (I)

Java object-oriented (II)

Java object-oriented (III)

Java Exception Handling

Java List

Java Queue (queue)

Java Map collection

Java Set collection

Java input/output (I/O)

Java Reader/Writer

Java other topics

Java ArrayList sort() method usage and example

Java ArrayList Methods

The Java ArrayList sort() method sorts the elements in the arraylist according to the specified order.

The syntax of the sort() method is:

arraylist.sort(Comparator c)

sort() parameter

  • comparator - Specify the sorting order of the arraylist

sort() return value

The sort() method does not return any value. It only changes the order of elements in the ArrayList.

Example1Sort the ArrayList in natural order

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    //Create ArrayList
    ArrayList<String> languages = new ArrayList<>();
    //Add elements to the ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Unsorted ArrayList: ", + languages);
    //Sort ArrayList in Ascending Order
    languages.sort(Comparator.naturalOrder());
    System.out.println("Sorted ArrayList: ", + languages);
  }
}

Output Result

Unsorted ArrayList: [Python, Swift, C, JavaScript]
Sorted ArrayList: [C, JavaScript, Python, Swift]

In the above example, we used the sort() method to sort the ArrayList named languages. Note this 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).

The Comparator interface also provides a method to sort elements in descending order. For example,

Example2Sort the ArrayList in descending order

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    //Create ArrayList
    ArrayList<String> languages = new ArrayList<>();
    //Add elements to the ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Unsorted ArrayList: ", + languages);
    //Sort ArrayList in Ascending Order
    languages.sort(Comparator.reverseOrder());
    System.out.println("Sorted ArrayList: ", + languages);
  }
}

Output Result

Unsorted ArrayList: [Python, Swift, C, JavaScript]
Sorted ArrayList: [Swift, Python, JavaScript, C]

Here, the reverseOrder() method of the Comparator interface specifies that the elements are sorted in reverse order (i.e., descending).

Note:Collections.sort()A more convenient method to sort an ArrayList.

Java ArrayList Methods