how sort an array java tutorial with examples
Bu Öğretici, Basit Örnekler yardımıyla Java'da Bir Diziyi Artan, Azalan ve Alfabetik Sıraya Göre Sıralamak için Çeşitli Yöntemleri Açıklayacaktır:
Sıralama, verileri belirli bir sıraya göre düzenler. Bilgisayar verileri, bir veya daha fazla alandan oluşan kayıtlardan oluşur. Verileri verimli kullanmak ve arama, erişim vb. Gibi çeşitli işlemleri gerçekleştirmek için bu verilerin belirli bir sırayla düzenlenmesi tavsiye edilir.
Örneğin, Öğrenci verilerinin çok sayıda kaydı varsa, bu verileri öğrenci kimliğine veya öğrenci adına göre düzenleyebiliriz. Bu, sıralama olarak adlandırılır. Bu nedenle, verileri daha verimli ve kolay kullanmak için sıralama şarttır.
=> Java Eğitim Eğitim Serisini Buradan Ziyaret Edin
Java'da diziler veri içerir ve bu verileri sağlanan bazı kriterlere göre düzenlemek için sıralamalıyız. Bu eğitimde, Dizilerin sıralanmasını basit örneklerle birlikte ayrıntılı olarak tartışacağız.
Ne öğreneceksin:
Java'da Dizi Nasıl Sıralanır
Java, dizileri sıralamak için aşağıdaki yöntemleri sağlar.
- Döngüler İçin Kullanma: Dizide gezinmek ve bitişik öğeleri dolaşırken ve sıraya koyarken karşılaştırmak için döngüleri kullanabilirsiniz.
- Sıralama yöntemini kullanma: 'Java.util' paketinin Arrays sınıfı, bir diziyi bağımsız değişken olarak alan ve diziyi sıralayan sıralama yöntemini sağlar. Bu, doğrudan bir sıralama yöntemidir ve bir diziyi yalnızca bir yöntem çağrısıyla sıralayabilirsiniz.
Bu iki yöntemi de ayrıntılı olarak inceleyelim.
Döngüleri Kullanma
Döngüler için kullanmak gibi manuel sıralamayı kullanarak diziyi sıralayabilirsiniz. Yapabileceğiniz şey, iki for döngüsü kullanmaktır; biri diziyi başlangıçtan çaprazlamak için, diğeri ise sonraki öğeyi geçmek için dıştaki döngü için.
Vücutta, bitişik öğeleri karşılaştırır ve sıralı değilse değiştirirsiniz. Öğelerin değiş tokuşu için geçici bir değişken kullanabilirsiniz.
Aşağıdaki program bu yaklaşımı göstermektedir.
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 Çıktı:
For döngüsünü kullanarak sıralama, daha küçük diziler söz konusu olduğunda verimli olabilir. Dizi boyutu arttığında işler karmaşıklaşabilir.
Sıralama Yöntemi
'Java.util.Arrays' sınıfı tarafından sağlanan sıralama yöntemi, bir diziyi sıralamak için çok basit ve daha hızlı bir yoldur. Bu yöntem, ilkel türdeki öğeleri ve karşılaştırılabilir arabirimi uygulayan nesneleri sıralayabilir.
İlkel tip öğeler sıralanırken, sıralama yöntemi hızlı sıralama kullanır. Nesneler sıralanırken yinelemeli birleştirme kullanılır.
Sıralama yönteminin genel prototipi aşağıdaki gibidir:
Arrays.sort (T() t_arr);
Burada, T () veri türüdür ve t_arr sıralanacak dizidir.
Yukarıdaki prototip, Karşılaştırılabilir arabirimi uygulayan diziler için çalışır.
Özel nesne dizileri için, aşağıda verildiği gibi başka bir Arrays.sort çeşidi kullanabilirsiniz. .
Arrays.sort(T() t_arr, Comparator.c);
Dolayısıyla, Comparable arabirimini uygulamayan diziler için sıralama işlevinde bir karşılaştırıcı iletilmelidir. Sıralama yönteminin varsayılan olarak diziyi artan sırada sıraladığını unutmayın.
Dizi sıralamanın bazı özel örneklerini görelim.
Sayısal Diziyi Artan Sırayla Sırala
İlk gösteri, sıralama yöntemlerini kullanarak sayı dizisinin artan düzende sıralanmasıdır. Daha önce belirtildiği gibi, varsayılan olarak sıralama yöntemi diziyi artan düzende sıralar. Bu nedenle, sayısal bir diziyi artan sırada sıralamak için, söz konusu dizide yöntemi çağırmanız yeterlidir.
Aşağıda bunu gösteren bir örnek verilmiştir.
çalışmak için en iyi oyun geliştiricileri
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)); } }
Çıktı:
Yukarıdaki programda, sadece bir işlev çağrısı diziyi artan sırada sıralar.
Sayısal Diziyi Azalan Sırayla Sırala
Bir sonraki görev, sayısal diziyi azalan düzende sıralamaktır. Bunu yapmak için, sıralama yöntemi, bir diziyi azalan düzende sıralayan ikinci bir bağımsız değişken 'Collections.reverseOrder ()' ile sağlanır.
Diziyi azalan düzende sıralayan program aşağıda verilmiştir.
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)); } }
Çıktı:
Dize Dizisini Alfabetik Sıraya Göre Sırala
Tıpkı sayısal diziler gibi, dizgi dizisini de sort işlevini kullanarak sıralayabilirsiniz. Dize dizisini ilettiğinizde, dizi artan alfabetik düzende sıralanır. Diziyi azalan alfabetik sırada sıralamak için, ikinci bağımsız değişken olarak Koleksiyonlar arabirim yöntemini reverseOrder () sağlamalısınız.
Aşağıdaki program, bir dizge dizisinin artan ve azalan sırayla sıralanmasını göstermektedir.
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)); } }
Çıktı:
Programın çıktısı, hem artan hem de azalan sırada sıralanmış bir dizi dizisini gösterir.
Sıkça Sorulan Sorular
S # 1) Java'da Sıralama nedir?
Cevap: Sıralama, verilerin alfabetik veya sayısal olarak sıralanması anlamına gelir.
S # 2) Java'da Diziler sıralamasında hangi Sıralama tekniği kullanılır?
Cevap: Diziler, ilkel veri türleri için dual-pivot Quicksort ve nesneleri sıralamak için Mergesort kullanır.
S # 3) Java'da Karşılaştırıcı nedir?
Cevap: Karşılaştırıcı arayüzü java.util paketinin bir parçasıdır ve kullanıcı tanımlı nesneleri düzenlemek için kullanılır. Karşılaştırıcı arabirimi, çoğunlukla, sıralama yöntemi kullanılarak nesnelerin sıralanması sırasında kullanılır.
S # 4) Java'da Sıralama'nın kullanımı nedir?
Cevap: Sıralama, verileri belirli bir sıraya göre düzenleme tekniğidir. Verileri sıralamak, verileri daha verimli ve hızlı bir şekilde arayabildiğimiz için kullanışlıdır. Ayrıca sipariş edilen verilere erişim, saklama vb. Diğer işlemleri de kolaylıkla gerçekleştirebiliriz.
S # 5) Listeleri Java'da sıralamak mümkün mü?
Cevap: Evet. Listeler, Java'daki Koleksiyonlar arayüzünün bir parçasıdır ve listeyi sıralamak için Koleksiyonlar arayüzünün sort () yöntemini kullanabiliriz.
Sonuç
Bu, Java'da dizilerin sıralanması konusundaki tartışmamızı tamamlıyor. Java paketleri tarafından sağlananlar da dahil olmak üzere Java'daki dizileri sıralamak için çeşitli yöntemleri ve dizi öğelerini tek tek sıralamak için 'for' döngülerini kullanmanın geleneksel yöntemini tartıştık.
Bir diziyi artan ve azalan sırada nasıl sıralayacağımızı gördük. Sonra bir dize dizisini alfabetik sıraya göre nasıl sıralayacağımızı öğrendik.
Sonraki eğitimlerimizde Java'daki diziler hakkında daha fazla konu keşfetmeye devam edeceğiz.
=> Tam Java Öğreticilerini Buradan Görün
Önerilen Kaynaklar
- Kod Örnekleriyle Java Dizi Uzunluğu Eğitimi
- Java'da Bir Diziyi Ters Çevirme - Örneklerle 3 Yöntem
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- Örneklerle Java Yansıtma Eğitimi
- Java Generic Array - Java'da Genel Diziler Nasıl Simüle Edilir?
- Java 'bu' Anahtar Kelime: Kod Örnekleriyle Eğitim
- Java'da Dizi Nasıl Geçilir / Döndürülür
- Java Dizisi - Java'da Bir Dizinin Elemanları Nasıl Yazdırılır?