Рубрики

Collections.sort () в Java с примерами

Метод java.util.Collections.sort () присутствует в классе java.util.Collections. Используется для сортировки элементов, присутствующих в указанном списке коллекции, в порядке возрастания.
Он работает аналогично методу java.util.Arrays.sort (), но это лучше, так как он может сортировать элементы массива, а также связанный список, очередь и многое другое, присутствующее в нем.

public static void sort(List myList)

myList : A List type object we want to sort.

This method doesn't return anything

Пример:


Let us suppose that our list contains
{"Geeks For Geeks", "Friends", "Dear", "Is", "Superb"}

After using Collection.sort(), we obtain a sorted list as
{"Dear", "Friends", "Geeks For Geeks", "Is", "Superb"}

Сортировка ArrayList в порядке возрастания

// Java-программа для демонстрации работы Collections.sort ()

import java.util.*;

  

public class Collectionsorting

{

    public static void main(String[] args)

    {

        // Создаем список строк

        ArrayList<String> al = new ArrayList<String>();

        al.add("Geeks For Geeks");

        al.add("Friends");

        al.add("Dear");

        al.add("Is");

        al.add("Superb");

  

        / * Метод Collections.sort сортирует

        элементы ArrayList в порядке возрастания. * /

        Collections.sort(al);

  

        // Давайте распечатать отсортированный список

        System.out.println("List after the use of" +

                           " Collection.sort() :\n" + al);

    }

}

Выход:

List after the use of Collection.sort() :
[Dear, Friends, Geeks For Geeks, Is, Superb]

Сортировка ArrayList в порядке убывания

// Java-программа для демонстрации работы Collections.sort ()
// в порядке убывания.

import java.util.*;

  

public class Collectionsorting

{

    public static void main(String[] args)

    {

        // Создаем список строк

        ArrayList<String> al = new ArrayList<String>();

        al.add("Geeks For Geeks");

        al.add("Friends");

        al.add("Dear");

        al.add("Is");

        al.add("Superb");

  

        / * Метод Collections.sort сортирует

        элементы ArrayList в порядке возрастания. * /

        Collections.sort(al, Collections.reverseOrder());

  

        // Давайте распечатать отсортированный список

        System.out.println("List after the use of" +

                           " Collection.sort() :\n" + al);

    }

}

Выход:

List after the use of Collection.sort() :
[Superb, Is, Geeks For Geeks, Friends, Dear]

Сортировка ArrayList в соответствии с заданными пользователем критериями.
Мы можем использовать интерфейс Comparator для этой цели.

// Java-программа для демонстрации работы Comparator
// интерфейс и Collections.sort () для сортировки в соответствии
// по заданным пользователем критериям.

import java.util.*;

import java.lang.*;

import java.io.*;

  
// Класс для представления студента.

class Student

{

    int rollno;

    String name, address;

  

    // Конструктор

    public Student(int rollno, String name,

                               String address)

    {

        this.rollno = rollno;

        this.name = name;

        this.address = address;

    }

  

    // Используется для печати сведений о студенте в main ()

    public String toString()

    {

        return this.rollno + " " + this.name +

                           " " + this.address;

    }

}

  

class Sortbyroll implements Comparator<Student>

{

    // Используется для сортировки в порядке возрастания

    // номер рулона

    public int compare(Student a, Student b)

    {

        return a.rollno - b.rollno;

    }

}

  
// Класс водителя

class Main

{

    public static void main (String[] args)

    {

        ArrayList<Student> ar = new ArrayList<Student>();

        ar.add(new Student(111, "bbbb", "london"));

        ar.add(new Student(131, "aaaa", "nyc"));

        ar.add(new Student(121, "cccc", "jaipur"));

  

        System.out.println("Unsorted");

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

            System.out.println(ar.get(i));

  

        Collections.sort(ar, new Sortbyroll());

  

        System.out.println("\nSorted by rollno");

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

            System.out.println(ar.get(i));

    }

}

Выход :

Unsorted
111 bbbb london
131 aaaa nyc
121 cccc jaipur

Sorted by rollno
111 bbbb london
121 cccc jaipur
131 aaaa nyc

Arrays.sort () против Collections.sort ()
Arrays.sort работает для массивов, которые также могут быть примитивного типа данных. Коллекции .sort () работает для объектов Коллекции, такие как ArrayList , LinkedList и т. Д.

Мы можем использовать Collections.sort () для сортировки массива после создания ArrayList заданных элементов массива.

// Использование Collections.sort () для сортировки массива

import java.util.*;

public class Collectionsort

{

    public static void main(String[] args)

    {

        // создаем массив строковых объектов

        String domains[] = {"Practice", "Geeks",

                             "Code", "Quiz"};

  

        // Здесь мы создаем список с именем Collist

        List colList =

            new ArrayList(Arrays.asList(domains));

  

        // здесь используется метод Collection.sort ()

        // сортировать элементы списка.

        Collections.sort(colList);

  

        // Давайте распечатать отсортированный список

        System.out.println("List after the use of" +

                           " Collection.sort()  :\n" +

                           colList);

    }

}

Выход:

List after the use of Collection.sort()  :
[Code, Geeks, Practice, Quiz]

Эта статья предоставлена Мохит Гупта . Желательно, чтобы статья была полезна уважаемым гикам.
Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.
,

Рекомендуемые посты:

Collections.sort () в Java с примерами

0.00 (0%) 0 votes