Пример интерфейса очереди Java | Интерфейс очереди в Java

Java Queue — это структура данных, в которую мы можем вставить элемент в этот конец очереди и удалить его в начале очереди. Он следует принципу FIFO (First In First Out).

Мы идем в банкомат для снятия наличных, и там мы используем эту концепцию очереди (если есть толпа). Мы должны поддерживать строку, которая представляет собой не что иное, как очередь. Тот, кто стоит первым в очереди, получает первую услугу, а кто стоит последним в очереди, получает последнюю услугу.

Пример интерфейса очереди Java

Интерфейс очереди доступен в пакете java.util и расширяет интерфейс коллекции. Коллекция очереди используется для хранения элементов, которые должны быть обработаны, и предоставляет различные операции, такие как вставка, удаление и т. Д.

Очередь представляет собой упорядоченный список объектов с его использование ограничивается вставкой элементов в конец списка и удалением элементов из начала списка.

queue — это интерфейс, поэтому нам нужны конкретные классы для объявления; в этом случае наиболее распространенными конкретными классами являются LinkedList и PriorityQueue. Мы создаем экземпляр LinkedList и PriorityQueue и назначаем его очереди, как показано в следующем синтаксисе.

 Queue q = new LinkedList (); Queue q = new PriorityQueue (); 

Характеристики очереди

Очередь используется для добавления элементов в конец очереди и удаления из начала очереди. Он следует концепции FIFO (First In First Out).

  1. Очередь Java поддерживает все методы интерфейса Collection, включая вставку, удаление и т. д.
  2. LinkedList, ArrayBlockingQueue и PriorityQueue являются наиболее часто используемыми реализациями.
  3. Если выполняется какая-либо операция с нулевым значением. в BlockingQueues выдается исключение NullPointerException.
  4. BlockingQueues имеет потокобезопасную реализацию.
  5. Очереди доступны в пакете java.util — Unbounded Queues
  6. Очереди доступны в пакете java.util.concurrent — это ограниченные очереди.
  7. Все очереди, кроме Deques, поддерживают вставку и удаление в хвосте и голове очереди соответственно . Deque поддерживает вставку и удаление элементов на обоих концах.

Методы интерфейса очереди

Существуют различные методы интерфейса очереди в java, с помощью которых мы можем реализовать структуру данных очереди.

boolean add ()

Используется для вставки любого конкретного элемента в конец очереди. Поскольку его возвращаемый тип является логическим, он возвращает true, если элемент успешно добавлен в очередь, или возвращает false, если не добавлен в очередь. Это происходит, когда очередь превышает максимальную емкость.

//Add.javaimport java.util.LinkedList; import java.util. Queue; class Add {public static void main (String [] er) {//создание экземпляра LinkedList для обозначения методов QueueQueue  q = new LinkedList  ();//добавление элементов в очередь q.add (  "AI"); q.add ("Java");//также используется для добавления elementq.offer ("Машинное обучение"); q.add ("Разработка приложений"); System.out.println ("Элементы в очередях  are: "+ q);}} 

См. вывод.

boolean offer ()

//Add.javaimport java.util.LinkedList; import java.util.Queue  ; class Add {public static void main (String [] er) {//создание экземпляра LinkedList для обозначения методов QueueQueue  q = new LinkedList  ();//добавление элементов в очередь q.add ("  AI "); q.add (" Java ");//также используется для добавления elementq.offer (" Машинное обучение "); q.add (" Разработка приложений "); System.out.println (" Элементы в очередях  : "+ q);}} 

Он также добавляет указанный элемент в очередь. Он выполняет ту же работу, что и метод add (). Результат такой же, как и в предыдущей программе.

Object remove ()

Используется для извлечения или удаления заголовка (первого элемента) очереди и возвращает его значение.

//Remove.java//импорт очереди и связанного списка import java.util.LinkedList; import java.util.Queue; class Remove {public static void main (String [] er) {//создание экземпляра LinkedList для обозначения методов  of QueueQueue  q = new LinkedList  ();//добавление элементов в очередь q.add ("AI"); q.add ("Java");//также используется для добавления elementq.offer ("  Машинное обучение "); q.add (" Разработка приложений "); System.out.println (" Элементы в очередях перед использованием метода удаления: "+ q);//удаляем элемент заголовка очереди q.remove ()  ; System.out.println ("Элементы в очередях после использования метода удаления:" + q);//удаление элемента с помощью метода опроса q.poll (); System.out.println ("Элементы в очередях после использования метода опроса:  "+ q);}} 

См. вывод.

Object peek ()

Метод peek () возвращает заголовок очереди. См. Следующую программу.

//Peek.java//импорт очереди и связанного списка import java.util.LinkedList; import java.util.Queue; class Peek {public static void main (String []  er) {//создание экземпляра LinkedList для обозначения методов QueueQueue  q = new LinkedList  ();//добавление элементов в очередь q.add ("AI"); q.add ("Java")  ;//также используется для добавления elementq.offer ("Машинное обучение"); q.add ("Разработка приложения"); System.out.println ("Элементы в очередях:" + q);//с использованием метода peekSystem.  out.println ("Заголовок очереди (с использованием метода peek ()):" + q.peek ());//с использованием element () methodSystem.out. println ("Головным элементом очереди является (с использованием метода element ()):" + q.element ());}} 

См. вывод.

Элемент объекта ()

Метод element () также возвращает заголовок очереди. Но разница между методом b/w element () и peek () возвращает null, если очередь пуста.

См. Следующую программу.

//Peek.java//импорт очереди и связанного списка import java.util.LinkedList; import java.util.Queue; class Peek {public static void main (String [] er) {//создание экземпляра LinkedList для обозначения методов QueueQueue  q = new  LinkedList  ();//добавляем элементы в очередь q.add ("AI"); q.add ("Java");//также используется для добавления elementq.offer ("Machine Learning"); q.add  ("Разработка приложений"); System.out.println ("Элементы в очередях:" + q);//с использованием метода peekSystem.out.println ("Элемент заголовка очереди (с использованием метода peek ()):"  + q.peek ());//с использованием element () methodSystem.out.println ("Головной элемент очереди (с использованием метода element ()):" + q.element ());}} 

Object poll ()

Метод poll () похож на метод remove (), но с той лишь разницей, что poll () возвращает null, если очередь пуста.

//Удалить.java//импорт очереди и связанного списка import java.util.LinkedList; import java.util.Queue; class Remove {public static void  main (String [] er) {//создание экземпляра LinkedList для обозначения методов QueueQueue  q = new LinkedList  ();//добавление элементов в очередь q.add ("AI"); q.add  ("Java");//также используется для добавления elementq.offer ("Машинное обучение"); q.add ("Разработка приложений"); System.out.println ("Элементы в очередях перед использованием метода удаления:" +  q);//удаляем элемент заголовка очереди q.remove (); System.out.println ("Элементы в очередях после использования метода remove:" + q);//удаляем элемент с помощью метода опроса q.poll ()  ; System.out.println ("Элементы в очередях после использования метода опроса:" + q);}} 

Вывод

size ()

Метод size () возвращает номер. элементов в очереди. Поскольку это подтип класса Collections, он наследует все его методы, а именно size (), isEmpty (), содержит ( ) и т. д.

Наконец, статья с примером интерфейса очереди Java окончена.

Оцените статью
nanomode.ru
Добавить комментарий