logo

Јава Декуе интерфејс

Интерфејс под називом Декуе је присутан у пакету јава.утил. То је подтип реда за интерфејс. Декуе подржава додавање као и уклањање елемената са оба краја структуре података. Према томе, декуе се може користити као стек или ред. Знамо да стек подржава операцију Ласт Ин Фирст Оут (ЛИФО), а операција Фирст Ин Фирст Оут је подржана редом. Како декуе подржава оба, било која од наведених операција се може извршити на њему. Декуе је акроним за 'двоструки ред'.

Декларација интерфејса Декуе

 public interface Deque extends Queue 

Методе Јава Декуе интерфејса

Метод Опис
логички додатак (објекат) Користи се за уметање наведеног елемента у овај низ и враћање труе након успеха.
логичка понуда (објекат) Користи се за уметање наведеног елемента у овај низ.
Уклони објекат() Користи се за преузимање и уклањање главе ове деке.
Објектна анкета() Користи се за преузимање и уклањање главе овог низа, или враћа нулл ако је овај низ празан.
Елемент објекта() Користи се за преузимање, али не уклања, глава ове деке.
Објецт пеек() Користи се за преузимање, али не уклања, главу овог низа, или враћа нулл ако је овај низ празан.
Објекат пеекФирст() Метод враћа главни елемент низа. Метода не уклања ниједан елемент из низа. Нулл се враћа овим методом када је декуе празан.
Објекат пеекЛаст() Метод враћа последњи елемент низа. Метода не уклања ниједан елемент из низа. Нулл се враћа овим методом када је декуе празан.
Боолеан офферФирст(е) Убацује елемент е на почетак реда. Ако је уметање успешно, враћа се труе; иначе, лажно.
Објекат понудаПоследњи(е) Убацује елемент е на крај реда. Ако је уметање успешно, враћа се труе; иначе, лажно.
јава арраидекуе хијерархија

АрраиДекуе класа

Знамо да није могуће креирати објекат интерфејса у Јави. Стога, за инстанцирање, потребна нам је класа која имплементира Декуе интерфејс, а та класа је АрраиДекуе. Расте и смањује се према употреби. Такође наслеђује класу АбстрацтЦоллецтион.

Важне тачке о класи АрраиДекуе су:

  • За разлику од Куеуе-а, можемо додати или уклонити елементе са обе стране.
  • Нулл елементи нису дозвољени у АрраиДекуе.
  • АрраиДекуе није сигуран нити, у одсуству спољне синхронизације.
  • АрраиДекуе нема ограничења капацитета.
  • АрраиДекуе је бржи од ЛинкедЛист и Стацк.

АрраиДекуе Хиерарцхи

Хијерархија класе АрраиДекуе дата је на слици приказаној на десној страни странице.

центрирање слике у цсс

Декларација класе АрраиДекуе

Хајде да видимо декларацију за класу јава.утил.АрраиДекуе.

 public class ArrayDeque extends AbstractCollection implements Deque, Cloneable, Serializable 

Јава АрраиДекуе Пример

Назив документа: АрраиДекуеЕкампле.јава

 import java.util.*; public class ArrayDequeExample { public static void main(String[] args) { //Creating Deque and adding elements Deque deque = new ArrayDeque(); deque.add('Ravi'); deque.add('Vijay'); deque.add('Ajay'); //Traversing elements for (String str : deque) { System.out.println(str); } } } 

Излаз:

Ravi Vijay Ajay 

Пример Јава АрраиДекуе: офферФирст() и поллЛаст()

Назив документа: ДекуеЕкампле.јава

 import java.util.*; public class DequeExample { public static void main(String[] args) { Deque deque=new ArrayDeque(); deque.offer('arvind'); deque.offer('vimal'); deque.add('mukul'); deque.offerFirst('jai'); System.out.println('After offerFirst Traversal...'); for(String s:deque){ System.out.println(s); } //deque.poll(); //deque.pollFirst();//it is same as poll() deque.pollLast(); System.out.println('After pollLast() Traversal...'); for(String s:deque){ System.out.println(s); } } } 

Излаз:

After offerFirst Traversal... jai arvind vimal mukul After pollLast() Traversal... jai arvind vimal 

Јава АрраиДекуе Пример: Боок

Назив документа: АрраиДекуеЕкампле.јава

 import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class ArrayDequeExample { public static void main(String[] args) { Deque set=new ArrayDeque(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications & Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to Deque set.add(b1); set.add(b2); set.add(b3); //Traversing ArrayDeque for(Book b:set){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } } 

Излаз:

101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications & Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6