Как отсортировать массив, список массивов, строку, список, карту и набор в Java?



Эта статья посвящена сортировке в Java. Здесь вы узнаете, как сортировать Array, ArrayList, String, List, Map и Set в Java.

Сортировка - неотъемлемая часть любого языка программирования. Без сомнения, Java - один из лучших языков программирования. Он имеет различные функции, которые упрощают работу! Эта статья поможет вам раскрыть все о сортировке в особенно сортировка Array, ArrayList, String, List, Map и Set в Java.

В этой сортировочной статье рассматриваются следующие темы:





Давайте начнем. :-)

Сортировка массива в Java

Массивы в Java хранить одно или несколько значений определенного типа данных и предоставлять индексированный доступ для их сохранения в одной переменной. Давайте посмотрим на приведенную ниже программу для сортировки массива в Java в порядке возрастания. Однако убедитесь, что у вас есть Java установлена .



Сортировка массива в Java - по возрастанию

package Edureka import java.util.Arrays public class SortArray {public static void main (String [] args) {int [] arr = {52,12,2,72,4} // массив из 5 элементов Arrays.sort (arr ) System.out.printf ('Отсортированный arr [] =% s', Arrays.toString (arr))}}

Вывод - Сортировано arr [] = [2, 4, 12, 52, 72]

Сортировка массива в Java - по убыванию

package Edureka import java.util.Arrays import java.util.Collections public class SortArray {public static void main (String [] args) {Integer [] arr = {52,12,2,72,4} // использовано Integer [ ] вместо int в виде коллекций Arrays.sort (arr, Collections.reverseOrder ()) // reverseorder () для убывания System.out.printf ('Sorted arr [] =% s', Arrays.toString (arr))} }

Вывод: Сортировано arr [] = [72, 52, 12, 4, 2]

Заметка: В приведенном выше коде я использовал массив Integer [] вместо int из-за . Это потому, что reverseOrder () не поддерживает примитивные типы.



Многие путаются с концепцией массивов и ArrayList в Java. Таблица ниже может развеять все ваши сомнения.

превратить объект в массив php
Массив ArrayList

Имеет фиксированную длину

Имеет переменную длину (динамический размер)

Поддерживает только примитивный тип данных

Можно добавлять в список разные объекты и данные

Не поддерживает добавление дубликатов

Позволяет добавлять повторяющиеся элементы

Может двигаться только вперед

Может перемещаться как вперед, так и назад

Размер не может быть изменен динамически

Размер можно изменять динамически


Надеюсь, вы понимаете разницу, давайте продолжим и посмотрим, как сортировать .

Сортировка ArrayList в Java (строка)

Сортировку ArrayList в Java можно легко выполнить с помощью простого sort () метод . См. Приведенный ниже код для сортировки ArrayList в Java.

класс против интерфейса в Java
package Edureka import java.util.Arrays import java.util.Collections import java.util. * public class sortingarraylist {public static void main (String args []) {ArrayList list = new ArrayList () // Заполняем список ArrayList.add ('sorting') list.add ('java') list.add ('arraylist') list.add ('in') System.out.println ('Unsorted ArrayList:' + list) // напечатает несортированные коллекции arrayylist. sort (list) // метод сортировки по возрастанию System.out.println ('Sorted ArrayList' + 'in Ascending order:' + list) // распечатать отсортированный массив массивов}}

Вывод -

Несортированный список массивов: [сортировка, java, arrayylist, в]
Сортированный список ArrayList в порядке возрастания: [arrayylist, in, java, sorting]

Продвигаясь вперед со статьей о сортировке в Java, давайте посмотрим, как можно сортировать целые числа. Попробуем реализовать сортировку другим методом, например, методом Collections.sort ().

Сортировка ArrayList в Java с использованием коллекций (целых чисел)

Вы можете отсортировать Integer ArrayList с помощью метода Collections.sort ().

пакет Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingArrayList {public static void main (String args []) {ArrayList arrayylist = new ArrayList () Arrayylist.add (48) arrayist. add (2) arraylist.add (19) arraylist.add (22) System.out.println ('Before Sorting:') // перед сортировкой по (int counter: arraylist) {System.out.println (counter)} Коллекции .sort (Arraylist) // функция для сортировки в порядке возрастания System.out.println ('After Sorting:') // после сортировки для (int counter: arraylist) {System.out.println (counter)}}}

Вывод -
Перед сортировкой:
48
2
19
22
После сортировки:
2
19
22
48

Строка сортировки в Java

Строка в Java неизменна. Нет прямого метода сортировки . Вы можете использовать Arrays, у которого есть метод CharArray (), который создаст строку ввода char, и с помощью другого метода (Arrays.sort (char c []) мы можем легко отсортировать.

package Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingString {public static String sortString (String inputString) {char Array1 [] = inputString.toCharArray () // преобразование входной строки в char array Arrays.sort (Array1) return new String (Array1) // return sorted string} public static void main (String [] args) {String inputString = 'Edureka' String outputString = sortString (inputString) System.out.println (' Входная строка: '+ inputString) System.out.println (' Выходная строка: '+ outputString)}}

Вывод -
Строка ввода: Edureka
Выходная строка: Eadekru

Сортировка списка в Java

Чтобы отсортировать список в , вы можете использовать метод Collections.sort (). Обратитесь к следующему коду для большего понимания:

пакет Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingList {public static void main (String [] args) {Integer [] digits = new Integer [] {12,56,89 , 27,22,4,88,65,36} Список digitsList = Arrays.asList (digits) Collections.sort (digitsList) // отсортированный список System.out.println ('Sorted String:' + digitsList)}}

Вывод : Сортированная строка: [4, 12, 22, 27, 36, 56, 65, 88, 89]

Сортировка карты в Java

Карта на Java принадлежит который содержит пару 'ключ-значение'. Следовательно, карту можно сортировать двумя способами:

как использовать mysql workbench
  • Сортировать по ключу
  • Сортировать по значению

Сортировать по ключу:

пакет Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingMap {public static void main (String [] args) {HashMap map = new HashMap () map.put (14, 'Aayushi ') map.put (2,' Rachit ') map.put (30,' Amit ') map.put (5,' Anamika ') TreeMap treeMap = new TreeMap (map) System.out.println (treeMap)}}

Вывод: {2 = Рачит, 5 = Анамика, 14 = Ааюши, 30 = Амит}

Сортировать по значению:

package Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingMap {public static void main (String [] args) {HashMap unSortedMap = new HashMap () unSortedMap.put (14, 'Aayushi ') unSortedMap.put (20,' Rachit ') unSortedMap.put (60,' Amit ') unSortedMap.put (70,' Anamika ') LinkedHashMap sortedMap = new LinkedHashMap () unSortedMap.entrySet () .stream () .sorted (Map.Entry.comparingByValue ()) .forEachOrdered (x -> sortedMap.put (x.getKey (), x.getValue ())) System.out.println (sortedMap)}}

Вывод: {14 = Ааюши, 60 = Амит, 70 = Анамика, 20 = Рачит}

Продвигаясь вперед с сортировкой в ​​Java, давайте рассмотрим последнюю тему, то есть отсортируем набор в .

Сортировка набора в Java

Набор в Java - это интерфейс, расширяющий Коллекции. Это неупорядоченный набор объектов, в котором не хранятся повторяющиеся значения. Сейчас нет прямого метода сортировки Set в Java. Теперь, чтобы отсортировать набор, вам нужно преобразовать набор в List, а затем использовать API collections.sort () и снова преобразовать список в набор. Обратитесь к приведенному ниже коду для большего понимания:

package Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortSet {public static void main (String [] args) {// Несортированный список HashSet numbersSet = new LinkedHashSet (Arrays.asList (12 , 56,89,27,22,4,88,65,36)) Список numbersList = new ArrayList (numbersSet) // преобразовать набор в список // Сортировать список Collections.sort (numbersList) numbersSet = new LinkedHashSet (numbersList) // преобразование списка в набор // Печать набора для подтверждения System.out.println (numbersSet)}}

Вывод : [4, 12, 22, 27, 36, 56, 65, 88, 89]

На этом мы подошли к концу нашего блога о сортировке в Java, где вы узнали, как сортировать Array, ArrayList, String, Map и Set в Java. Я надеюсь, что вы нашли этот блог информативным и повысили ценность ваших знаний.

Убедитесь, что вы тренируетесь как можно больше и верните свой опыт.

Проверьте от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учащихся по всему миру. Курс обучения и сертификации по Java J2EE и SOA от Edureka предназначен для студентов и профессионалов, которые хотят стать Java-разработчиками. Курс разработан, чтобы дать вам хорошее начало в программировании на Java и обучить вас как основным, так и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев к этой статье «Сортировка в Java: Array, ArrayList, String, Map и Set в Java», и мы свяжемся с вами как можно скорее.