Рубрики

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

Метод sort () является методом класса java.util.Arrays .

Синтаксис:

public static void sort(int[] arr, int from_Index, int to_Index)

arr - the array to be sorted
from_Index - the index of the first element, inclusive, to be sorted
to_Index - the index of the last element, exclusive, to be sorted

This method doesn't return any value.
 

Java-программа для сортировки массива целых чисел в порядке возрастания .

// Пример Java-программы для сортировки массива целых чисел
// используя Arrays.sort (). По умолчанию сортируется в
// в порядке возрастания

import java.util.Arrays;

  

public class SortExample

{

    public static void main(String[] args)

    {

        // Наш arr содержит 8 элементов

        int[] arr = {13, 7, 6, 45, 21, 9, 101, 102};

  

        Arrays.sort(arr);

  

        System.out.printf("Modified arr[] : %s",

                          Arrays.toString(arr));

    }

}

Выход:

Modified arr[] : [6, 7, 9, 13, 21, 45, 101, 102]

Мы также можем использовать sort () для сортировки подмассива arr []

// Пример Java-программы для сортировки подмассива
// используя Arrays.sort ().

import java.util.Arrays;

  

public class SortExample

{

    public static void main(String[] args)

    {

        // Наш arr содержит 8 элементов

        int[] arr = {13, 7, 6, 45, 21, 9, 2, 100};

  

        // Сортировать подмассив из индекса 1 в 4, т.е.

        // сортируем только подмассив {7, 6, 45, 21} и

        // сохранить другие элементы как есть.

        Arrays.sort(arr, 1, 5);

  

        System.out.printf("Modified arr[] : %s",

                          Arrays.toString(arr));

    }

}

Выход:

Modified arr[] : [13, 6, 7, 21, 45, 9, 2, 100]

Мы также можем отсортировать в порядке убывания.

// Пример Java-программы для сортировки подмассива
// в порядке убывания с помощью Arrays.sort ().

import java.util.Arrays;

import java.util.Collections;

  

public class SortExample

{

    public static void main(String[] args)

    {

        // Обратите внимание, что у нас есть целое число вместо

        // int [], поскольку Collections.reverseOrder этого не делает

        // работа для примитивных типов.

        Integer[] arr = {13, 7, 6, 45, 21, 9, 2, 100};

  

        // сортирует arr [] в порядке убывания

        Arrays.sort(arr, Collections.reverseOrder());

  

        System.out.printf("Modified arr[] : %s",

                          Arrays.toString(arr));

    }

}

Выход:

Modified arr[] : [100, 45, 21, 13, 9, 7, 6, 2]

Мы также можем сортировать строки в алфавитном порядке.

// Пример Java-программы для сортировки массива строк
// в порядке возрастания и убывания, используя Arrays.sort ().

import java.util.Arrays;

import java.util.Collections;

  

public class SortExample

{

    public static void main(String[] args)

    {

        String arr[] = {"practice.geeksforgeeks.org",

                        "quiz.geeksforgeeks.org",

                        "code.geeksforgeeks.org"

                       };

  

        // сортирует arr [] в порядке возрастания

        Arrays.sort(arr);

        System.out.printf("Modified arr[] : \n%s\n\n",

                          Arrays.toString(arr));

  

        // сортирует arr [] в порядке убывания

        Arrays.sort(arr, Collections.reverseOrder());

  

        System.out.printf("Modified arr[] : \n%s\n\n",

                          Arrays.toString(arr));

    }

}

Выход:

Modified arr[] : 


Modified arr[] : 
[quiz.geeksforgeeks.org, practice.geeksforgeeks.org, code.geeksforgeeks.org]

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

// Java-программа для демонстрации работы Comparator
// интерфейс

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)

    {

        Student [] arr = {new Student(111, "bbbb", "london"),

                          new Student(131, "aaaa", "nyc"),

                          new Student(121, "cccc", "jaipur")};

  

        System.out.println("Unsorted");

        for (int i=0; i<arr.length; i++)

            System.out.println(arr[i]);

  

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

  

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

        for (int i=0; i<arr.length; i++)

            System.out.println(arr[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 и т. Д.

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

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

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

0.00 (0%) 0 votes