Isih tatasusunan dalam tertib menaik atau menurun menggunakan Arrays.sort()
Sumber:
FreeCodeCamp Dengan siaran ini, anda akan belajar cara mengisih tatasusunan sama ada dalam tertib menaik atau menurun dalam Java.
Di Java, kami menggunakan tatasusunan untuk menyimpan satu set pembolehubah (dengan jenis data yang sama) dalam satu pembolehubah. Tetapi kadangkala nilai yang disimpan dalam tatasusunan muncul dalam susunan rawak. Terima kasih kepada kelas
Array di Java, kami mempunyai beberapa cara untuk memanipulasi tatasusunan, termasuk menyusunnya. Salah satu kaedah yang akan kami gunakan daripada kelas
Arrays ialah
sort() method , yang menyusun tatasusunan dalam tertib menaik. Untuk mengisih tatasusunan dalam tertib menurun, gunakan kaedah
reverseOrder() kelas
Koleksi di Java.
Bagaimana untuk mengisih tatasusunan dalam tertib menaik di Jawa menggunakan Arrays.sort()
Berikut ialah contoh bagaimana kita boleh menggunakan kaedah
sort() untuk mengisih tatasusunan dalam tertib menaik.
import java.util.Arrays;
class ArraySort {
public static void main(String[] args) {
int[] arr = { 5, 2, 1, 8, 10 };
Arrays.sort(arr);
for (int values : arr) {
System.out.print(values + ", ");
}
}
}
Perkara pertama yang kami lakukan dalam contoh di atas ialah mengimport kelas
Arrays :
import java.util.Arrays; . Ini memberi kami akses kepada semua kaedah kelas
Arrays . Kemudian kami mencipta tatasusunan dengan nombor dalam susunan rawak:
int[] arr = { 5, 2, 1, 8, 10 }; . Untuk mengisih tatasusunan ini dalam tertib menaik, kami lulus tatasusunan sebagai parameter kepada kaedah
sort() :
Arrays.sort(arr); . Ambil perhatian bahawa kelas
Tatasusunan ditulis terlebih dahulu sebelum mengakses kaedah
sort() menggunakan notasi titik. Akhirnya, kami mencipta gelung dan mencetak tatasusunan ke konsol. Hasilnya ialah tatasusunan yang diisih:
1, 2, 5, 8, 10 . Sekarang mari kita bercakap tentang menyusun tatasusunan dalam tertib menurun.
Bagaimana untuk mengisih tatasusunan dalam susunan menurun dalam Java menggunakan Collections.reverseOrder()
Untuk mengisih tatasusunan dalam tertib menurun, anda harus menggunakan
reverseOrder() , yang boleh diakses daripada kelas
Koleksi . Kami masih akan menggunakan
Arrays.sort(); , tetapi dalam contoh ini ia akan mengambil dua parameter - tatasusunan untuk diisih dan
Collections.reverseOrder() .
import java.util.Arrays;
import java.util.Collections;
class ArraySort {
public static void main(String[] args) {
Integer[] arr = { 5, 2, 1, 8, 10 };
Arrays.sort(arr, Collections.reverseOrder());
for (int values : arr) {
System.out.print(values + ", ");
}
}
}
Perkara pertama yang kami lakukan ialah mengimport kelas
Arrays dan
Collections kerana kami akan menggunakan kaedah yang disediakan oleh kelas ini. Kami kemudian mencipta tatasusunan nombor dalam susunan rawak:
Integer[] arr = { 5, 2, 1, 8, 10 }; . Seperti yang anda lihat, kami menggunakan
Integer[] dan bukannya
int[] seperti dalam contoh sebelumnya. Jika tidak ralat akan berlaku. Untuk mengisih tatasusunan dalam tertib menurun, kami melakukan ini:
Arrays.sort(arr, Collections.reverseOrder()); . Parameter pertama ialah
arr tatasusunan yang akan diisih dalam tertib menaik. Parameter kedua,
Collections.reverseOrder() , kemudian akan membalikkan susunan tatasusunan yang diisih supaya ia berada dalam tertib menurun. Apabila digelung dan dicetak, tatasusunan akan kelihatan seperti ini:
10, 8, 5, 2, 1 .
Kesimpulan
Dalam artikel ini, kami membincangkan tentang menyusun tatasusunan dalam Java - cara ia boleh diisih dalam tertib menaik atau menurun. Untuk melakukan ini, kita boleh menggunakan kaedah
sort() , yang boleh diakses daripada kelas
Arrays . Kaedah
sort() mengambil tatasusunan untuk diisih sebagai parameter. Untuk mengisih tatasusunan dalam tertib menurun, kami menggunakan kaedah
reverseOrder() yang disediakan oleh kelas Koleksi. Ia diluluskan sebagai parameter kedua kepada kaedah
sort() supaya tatasusunan yang diisih boleh disusun semula dalam tertib menurun.
Koleksi Java. Apakah perbezaan antara antara muka Senarai dan Set?
Sumber: Senarai dan Set
Rrtutors ialah antara muka Java untuk memanjangkan antara muka
Koleksi . Dalam siaran ini, kita akan melihat perbezaan utama antara kedua-duanya, serta cara ia boleh digunakan.
Perbezaan antara antara muka Set dan Senarai dalam Java
Mari kita tentukan perbezaan utama antara antara muka
Senarai dan
Set berdasarkan parameter utama berikut:
Perlaksanaan
List melaksanakan
ArrayLists , manakala
HashSet melaksanakan
Set .
Pengindeksan
Anda boleh menggunakan
ListIterator untuk bergerak ke hadapan dan ke belakang melalui
Senarai , tetapi bukan melalui Set . Gunakan Iterator sebaliknya (yang berfungsi dengan kedua-dua
List dan
Set ).
Pesanan
Antara muka
Set tidak menyokong sebarang susunan set tertentu. Koleksi jenis
Set sudah diisih mengikut peraturannya sendiri dan tidak boleh diisih begitu sahaja.
Senarai ialah senarai tersusun. Objek disimpan mengikut susunan ia ditambahkan pada senarai. Elemen senarai diakses oleh indeks.
Objek nol
Senarai tidak mempunyai sekatan dan sokongan menambah nilai Null, manakala
Set membenarkan paling banyak satu nilai null.
Pendua
Senarai boleh mengandungi pendua, tetapi
Set tidak boleh. Set tidak membenarkan elemen pendua kerana semua elemennya mestilah unik. Jika anda memasukkan elemen pendua ke dalam
Set , nilai sedia ada akan ditimpa.
Bilakah anda perlu menggunakan Senarai dan Set?
Set ialah pilihan terbaik apabila anda hanya perlu menyimpan nilai unik, kerana untuk itulah ia direka bentuk. Tetapi jika anda ingin mengekalkan susunan sisipan walaupun terdapat pertindihan,
List ialah pilihan terbaik .
Set Contoh
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class ListExample {
public static void main(String[] args) {
List<String> al = new ArrayList<String>();
al.add("Rohit");
al.add("Panjab");
al.add("Kamir");
System.out.println("My ArrayList Items: ");
System.out.print(al);
List<String> ll = new LinkedList<String>();
ll.add("Shobit");
ll.add("Raul");
ll.add("Ketel");
System.out.println("\n My LinkedList Items: ");
System.out.print(ll);
}
}
Senarai Contoh
import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
public class SetExample {
public static void main(String[] args) {
int myList[] = {60, 70, 80, 40 };
Set<Integer> dispSet = new HashSet<Integer>();
try{
for(int i = 0; i<4; i++){
dispSet.add(myList[i]);
}
System.out.println(dispSet);
TreeSet<Integer> treeset = new TreeSet<Integer>(dispSet);
System.out.println("Sorting in Asceding order:");
System.out.println(treeset);
}
catch(Exception e){
e.printStackTrace();
}
}
}
GO TO FULL VERSION