Prioriteetti Jono Java-tilassa käytetään, kun objektien on tarkoitus käsitellä prioriteetin perusteella. Tämä artikkeli auttaa sinua tutkimaan tätä käsitettä yksityiskohtaisesti. Seuraavat vihjeet käsitellään tässä artikkelissa,
Joten aloitetaan sitten,
Prioriteettijono Java-tilassa
Kuten jo mainittiin, PriorityQueue-asetusta käytetään, kun objektien on tarkoitus käsitellä prioriteetin perusteella. Tiedetään, että jono noudattaa First-In-First-Out-algoritmia, mutta joskus jonon elementit täytyy käsitellä prioriteetin mukaan, silloin kun PriorityQueue tulee esiin. PriorityQueue perustuu prioriteetin kasaan. Prioriteettijonon elementit järjestetään luonnollisen järjestyksen mukaan tai jonon rakentamisajankohtana toimitetulla vertailijalla riippuen käytettävästä konstruktorista.
- PriorityQueue ei salli NULL-viitteitä.
- Emme voi luoda PriorityQueue-objekteja, jotka eivät ole vertailukelpoisia
- PriorityQueue ovat sitomattomat jonot.
- Tämän jonon pää on vähiten elementti määritettyyn järjestykseen nähden. Jos useita elementtejä on sidottu vähiten arvoa varten, pää on yksi näistä elementeistä - siteet katkaistaan mielivaltaisesti.
- Jonon noutotoiminnot kysyvät, poistavat, kurkottavat ja elementit käyttävät jonon kärjessä olevaa elementtiä.
- Se perii menetelmät AbstractQueue-, AbstractCollection-, Collection- ja Object-luokista.
Jatketaan tämän artikkelin kanssa Java-prioriteettijonoa
Queue Interface -ilmoitus
julkisen käyttöliittymän jono laajentaa kokoelmaa
Jatketaan tämän artikkelin kanssa Java-prioriteettijonoa
Kuinka koota Java-ohjelma
Java Queue Interface -menetelmät
Menetelmä | Kuvaus |
looginen lisäys (objekti) | Sitä käytetään lisäämään määritetty elementti tähän jonoon ja palaamaan totta onnistumisen jälkeen. |
looginen tarjous (objekti) | Sitä käytetään lisäämään määritetty elementti tähän jonoon. kuinka käyttää jaettua menetelmää java |
Objektin poisto () | Sitä käytetään tämän jonon pään hakemiseen ja poistamiseen. |
Objektikysely () | Sitä käytetään tämän jonon pään hakemiseen ja poistamiseen tai palautetaan tyhjäksi, jos tämä jono on tyhjä. |
Objektielementti () | Sitä käytetään tämän jonon pään hakemiseen, mutta se ei poista sitä. |
Kohteen kurkistus () | Sitä käytetään tämän jonon pään hakemiseen, mutta se ei poista, tai palauttaa tyhjän, jos tämä jono on tyhjä. muuntaa objekti taulukon php: ksi |
Jatketaan tämän artikkelin kanssa Javan tärkeysjärjestystä
Esimerkki
paketti com.journaldev.collections
tuo java.util.Comparator tuo java.util.PriorityQueue tuoda java.util.Queue tuoda java.util.Random julkinen luokka PriorityQueueExample {public static void main (String [] args) {// luonnollinen järjestysesimerkki prioriteettijonosta Queue integerPriorityQueue = uusi PriorityQueue (7) Satunnainen rand = uusi Random () kohteelle (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()) } } }
Tuotos:
Siksi olemme päässeet tämän artikkelin 'Priority Queue in Java' -osioon. Jos haluat oppia lisää, tutustu Edureka, luotettava verkko-oppimisyritys. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssit on suunniteltu kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia Java-kehyksiä, kuten Hibernate & Spring.
Onko sinulla kysymys meille? Mainitse se tämän blogin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.