how sort an array java tutorial with examples
Ten samouczek wyjaśni różne metody sortowania tablicy w Javie w porządku rosnącym, malejącym i alfabetycznym za pomocą prostych przykładów:
Sortowanie porządkuje dane w określonej kolejności. Dane komputerowe składają się z rekordów składających się z co najmniej jednego pola. Aby efektywnie wykorzystywać dane i wykonywać różne operacje, takie jak wyszukiwanie, uzyskiwanie dostępu itp., Zaleca się uporządkowanie tych danych w określonej kolejności.
Na przykład, jeśli istnieje wiele rejestrów danych ucznia, możemy uporządkować te dane w zależności od identyfikatora lub nazwiska ucznia. Nazywa się to sortowaniem. Dlatego sortowanie jest niezbędne do wydajniejszego i łatwiejszego wykorzystywania danych.
=> Odwiedź serię samouczków szkoleniowych dotyczących języka Java
W Javie tablice zawierają dane i powinniśmy posortować te dane, aby uporządkować je według podanych kryteriów. W tym samouczku szczegółowo omówimy sortowanie tablic wraz z prostymi przykładami.
Czego się nauczysz:
Jak posortować tablicę w Javie
Java udostępnia następujące metody sortowania tablic.
- Korzystanie z pętli For: Możesz użyć pętli for, aby przejść przez tablicę i porównać sąsiednie elementy podczas przechodzenia i porządkowania ich.
- Korzystanie z metody sortowania: Klasa Arrays pakietu „java.util” udostępnia metodę sortowania, która przyjmuje tablicę jako argument i sortuje tablicę. Jest to metoda sortowania bezpośredniego, a tablicę można sortować za pomocą tylko jednego wywołania metody.
Zbadajmy szczegółowo obie te metody.
Korzystanie z pętli
Możesz posortować tablicę przy użyciu sortowania ręcznego, takiego jak użycie pętli for. Możesz użyć dwóch pętli for, jednej do przejścia przez tablicę od początku, a drugiej do pętli wewnątrz zewnętrznej, aby przejść przez następny element.
W treści porównujesz sąsiednie elementy i zamieniasz je, jeśli nie są w kolejności. Możesz użyć tymczasowej zmiennej do zamiany elementów.
Poniższy program pokazuje takie podejście.
public class Main { public static void main(String() args) { //define original array int () intArray = new int () {52,45,32,64,12,87,78,98,23,7}; int temp = 0; //print original array System.out.println('Original array: '); for (int i = 0; i Wynik:

Sortowanie przy użyciu pętli for może być wydajne, gdy używane są mniejsze tablice. Może się to skomplikować, gdy zwiększy się rozmiar tablicy.
Metoda sortowania
Metoda sortowania udostępniana przez klasę „java.util.Arrays” to bardzo prosty i szybszy sposób sortowania tablicy. Ta metoda może sortować elementy typów pierwotnych, a także obiekty, które implementują porównywalny interfejs.
Kiedy sortowane są elementy typu pierwotnego, metoda sortowania używa quicksort. Podczas sortowania obiektów używany jest iteracyjny scalanie.
Ogólny prototyp metody sort jest następujący:
Arrays.sort (T() t_arr);
Tutaj T () to typ danych, a t_arr to tablica, która ma być posortowana.
Powyższy prototyp działa dla tablic implementujących interfejs Comparable.
W przypadku tablic obiektów niestandardowych można użyć innego wariantu Arrays.sort, jak podano poniżej .
Arrays.sort(T() t_arr, Comparator.c);
Tak więc dla tablic, które nie implementują interfejsu Comparable, w funkcji sortowania należy przekazać komparator. Zwróć uwagę, że domyślnie metoda sort sortuje tablicę w porządku rosnącym.
Zobaczmy kilka konkretnych przykładów sortowania tablic.
Sortuj tablicę liczbową w porządku rosnącym
Pierwsza demonstracja to sortowanie tablicy liczb w porządku rosnącym przy użyciu metod sortowania. Jak już wspomniano, metoda sortowania domyślnie sortuje tablicę w porządku rosnącym. Tak więc, aby posortować tablicę numeryczną w porządku rosnącym, wystarczy wywołać metodę na tej tablicy.
Poniżej podano przykład, który to pokazuje.
wodospadowe modele cyklu życia oprogramowania
import java.util.Arrays; public class Main { public static void main(String() args) { //define an array int() intArray = {52, 45, 32, 64, 12, 87, 78, 98, 23, 7}; System.out.printf('Original Array : %s', Arrays.toString(intArray)); Arrays.sort(intArray); System.out.printf('
Sorted Array : %s', Arrays.toString(intArray)); } }
Wynik:

W powyższym programie tylko jedno wywołanie funkcji sortuje tablicę w porządku rosnącym.
Sortuj tablicę liczbową w porządku malejącym
Następnym zadaniem jest posortowanie tablicy numerycznej w porządku malejącym. W tym celu metoda sortowania jest wyposażona w drugi argument „Collections.reverseOrder ()”, który sortuje tablicę w porządku malejącym.
Program do sortowania tablicy w porządku malejącym podano poniżej.
import java.util.Arrays; import java.util.Collections; public class Main { public static void main(String() args) { //Collections.reverseOrder do not work for primitive Types //define an array with Integer Integer() IntArray = {52, 45, 32, 64, 12, 87, 78, 98, 23, 7}; //print original array System.out.printf('Original Array: %s', Arrays.toString(IntArray)); // Sorts IntArray in descending order Arrays.sort(IntArray, Collections.reverseOrder()); //print sorted array System.out.printf('
Sorted Array: %s', Arrays.toString(IntArray)); } }
Wynik:

Sortuj tablicę ciągów w porządku alfabetycznym
Podobnie jak w przypadku tablic numerycznych, możesz również sortować tablicę ciągów za pomocą funkcji sortowania. Po przekazaniu tablicy ciągów tablica jest sortowana w rosnącej kolejności alfabetycznej. Aby posortować tablicę w malejącej kolejności alfabetycznej, jako drugi argument należy podać metodę interfejsu kolekcji reverseOrder ().
Poniższy program demonstruje sortowanie tablicy ciągów w porządku rosnącym i malejącym.
import java.util.Arrays; import java.util.Collections; public class Main { public static void main(String() args) { String str_Array() = {'Java', 'Python', 'Perl', 'C++', 'C#', 'AS400'}; System.out.printf('Original Array:
%s
', Arrays.toString(str_Array)); // Sorts str_Array in ascending order Arrays.sort(str_Array); System.out.printf('Array sorted in ascending order:
%s
', Arrays.toString(str_Array)); // Sorts str_Array in descending order Arrays.sort(str_Array, Collections.reverseOrder()); System.out.printf('Array sorted in descending order :
%s
', Arrays.toString(str_Array)); } }
Wynik:

Dane wyjściowe programu pokazują posortowaną tablicę ciągów zarówno w porządku rosnącym, jak i malejącym.
Często Zadawane Pytania
P # 1) Co to jest sortowanie w Javie?
Odpowiedź: Sortowanie odnosi się do porządkowania danych w kolejności alfabetycznej lub numerycznej.
P # 2) Która technika sortowania jest używana do sortowania tablic w Javie?
Odpowiedź: Tablice używają funkcji szybkiego sortowania z dwoma obrotami do podstawowych typów danych i sortowania scalonego do sortowania obiektów.
P # 3) Co to jest komparator w Javie?
Odpowiedź: Interfejs komparatora jest częścią pakietu java.util i służy do porządkowania obiektów zdefiniowanych przez użytkownika. Interfejs komparatora jest najczęściej używany podczas sortowania obiektów metodą sortowania.
P # 4) Jakie jest zastosowanie sortowania w Javie?
Odpowiedź: Sortowanie to technika porządkowania danych w określonej kolejności. Sortowanie danych jest przydatne, ponieważ możemy wyszukiwać dane wydajniej i szybciej. Z łatwością możemy również przeprowadzić inne operacje, takie jak dostęp, przechowywanie itp. Na zamówionych danych.
P # 5) Czy można sortować listy w Javie?
Odpowiedź: Tak. Listy są częścią interfejsu Kolekcje w Javie i możemy użyć metody sort () interfejsu Kolekcje do sortowania listy.
Wniosek
Na tym kończy się nasza dyskusja na temat sortowania tablic w Javie. Omówiliśmy różne metody sortowania tablic w Javie, w tym metody dostarczane przez pakiety Java, a także tradycyjną metodę używania pętli „for” do sortowania elementów tablic jeden po drugim.
Widzieliśmy, jak posortować tablicę w porządku rosnącym i malejącym. Następnie nauczyliśmy się sortować tablicę ciągów w kolejności alfabetycznej.
Będziemy nadal badać więcej tematów dotyczących tablic w Javie w naszych kolejnych samouczkach.
=> Zobacz pełne samouczki Java dla wszystkich tutaj
rekomendowane lektury
- Samouczek dotyczący długości tablicy w języku Java z przykładami kodu
- Odwróć tablicę w Javie - 3 metody z przykładami
- Samouczek JAVA dla początkujących: ponad 100 praktycznych samouczków wideo Java
- Samouczek dotyczący refleksji w języku Java z przykładami
- Tablica ogólna Java - jak symulować tablice ogólne w Javie?
- Słowo kluczowe „this” w języku Java: samouczek z przykładami kodu
- Jak przekazać / zwrócić tablicę w Javie
- Tablica Java - jak wydrukować elementy tablicy w języku Java?