Keutamaan Beratur Di Jawa digunakan apabila objek sepatutnya diproses berdasarkan keutamaan. Artikel ini akan membantu anda meneroka konsep ini secara terperinci. Petunjuk berikut akan dibahas dalam artikel ini,
Oleh itu, mari kita mulakan,
Baris Keutamaan Di Jawa
Seperti yang telah disebutkan, PriorityQueue digunakan ketika objek seharusnya diproses berdasarkan keutamaan. Telah diketahui bahawa barisan mengikuti algoritma First-In-First-Out, tetapi kadang-kadang elemen-elemen barisan perlu diproses mengikut keutamaan, ketika itulah PriorityQueue dimainkan. PriorityQueue berdasarkan timbunan keutamaan. Unsur-unsur antrian keutamaan disusun mengikut susunan semula jadi, atau oleh Pembanding yang disediakan pada waktu pembinaan antrian, bergantung pada konstruktor mana yang digunakan. Beberapa perkara penting mengenai Antrian Prioriti adalah seperti berikut:
- PriorityQueue tidak membenarkan penunjuk NULL.
- Kami tidak dapat membuat PriorityQueue of Objects yang tidak dapat dibandingkan
- PriorityQueue adalah barisan yang tidak terikat.
- Kepala barisan ini adalah elemen paling sedikit berkaitan dengan susunan yang ditentukan. Sekiranya beberapa elemen diikat dengan nilai yang paling rendah, kepala adalah salah satu elemen tersebut - ikatan terputus dengan sewenang-wenangnya.
- Operasi pengambilan giliran mengundi, membuang, mengintip, dan elemen mengakses elemen di kepala barisan.
- Ia mewarisi kaedah dari kelas AbstractQueue, AbstractCollection, Collection dan Object.
Melanjutkan dengan artikel ini mengenai Priority Queue di Java
Pengisytiharan antara muka
Antarmuka awam meluas Koleksi
Melanjutkan dengan artikel ini mengenai Priority Queue di Java
Kaedah Antaramuka Antrian Java
Kaedah | Penerangan |
tambah boolean (objek) | Ia digunakan untuk memasukkan elemen yang ditentukan ke dalam barisan ini dan kembali benar setelah berjaya. cara mengatur gerhana |
tawaran boolean (objek) | Ia digunakan untuk memasukkan elemen yang ditentukan ke dalam barisan ini. |
Objek dikeluarkan () | Ini digunakan untuk mengambil dan membuang kepala antrian ini. |
Tinjauan objek () | Ini digunakan untuk mengambil dan membuang kepala antrian ini, atau mengembalikan null jika barisan ini kosong. |
Elemen objek () | Ia digunakan untuk mengambil, tetapi tidak membuang, kepala barisan ini. |
Mengintip objek () | Ini digunakan untuk mengambil, tetapi tidak membuang, kepala barisan ini, atau mengembalikan nol jika barisan ini kosong. |
Teruskan dengan artikel ini mengenai Priority Queue di Java
Contohnya
pakej com.journaldev.collections
import java.util.Comparator import java.util.PriorityQueue import java.util.Queue import java.util.Random public class PriorityQueueExample {public static void main (String [] args) {// contoh pesanan semula jadi keutamaan queue Queue integerPriorityQueue = PriorityQueue baru (7) Random rand = new Random () untuk (int i = 0i<7i++){ integerPriorityQueue.add(new Integer(rand.nextInt(100))) } for(int i=0i<7i++){ Integer in = integerPriorityQueue.poll() System.out.println('Processing Integer:'+in) } //PriorityQueue example with Comparator Queue customerPriorityQueue = new PriorityQueue(7, idComparator) addDataToQueue(customerPriorityQueue) pollDataFromQueue(customerPriorityQueue) } //Comparator anonymous class implementation public static Comparator idComparator = new Comparator(){ @Override public int compare(Customer c1, Customer c2) { return (int) (c1.getId() - c2.getId()) } } //utility method to add random data to Queue private static void addDataToQueue(Queue customerPriorityQueue) { Random rand = new Random() for(int i=0 i<7 i++){ int id = rand.nextInt(100) customerPriorityQueue.add(new Customer(id, 'Pankaj '+id)) } } //utility method to poll data from queue private static void pollDataFromQueue(Queue customerPriorityQueue) { while(true){ Customer cust = customerPriorityQueue.poll() if(cust == null) break System.out.println('Processing Customer with ID='+cust.getId()) } } }
Pengeluaran:
Oleh itu, kita telah mengakhiri artikel ini mengenai ‘Priority Queue in Java’. Sekiranya anda ingin mengetahui lebih lanjut, lihat di oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai. Kursus latihan dan pensijilan Java J2EE dan SOA Edureka dirancang untuk melatih anda untuk konsep Java teras dan maju bersama dengan pelbagai kerangka kerja Java seperti Hibernate & Spring.
Ada soalan untuk kami? Sila sebutkan di bahagian komen blog ini dan kami akan menghubungi anda secepat mungkin.