Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Java ArrayDeque

Запись массива Java

В этом уроке мы узнаем о классе ArrayDeque и его методах с помощью примеров. Кроме того, мы научимся использовать очередь массива для реализации стека.

В Java мы можем использовать 07 класс для реализации структур данных очереди и очереди с использованием массивов.

<час>

Интерфейсы, реализованные ArrayDeque

17 класс реализует эти два интерфейса:

<час>

Создание ArrayDeque

Чтобы создать очередь массива, мы должны импортировать 26 пакет.

Вот как мы можем создать очередь массивов в Java:

09

Здесь Введите указывает тип очереди массива. Например,

18
<час>

Методы ArrayDeque

39 класс предоставляет реализации для всех методов, присутствующих в 49. и 53 интерфейс.

<час>

Вставить элементы в очередь

<сильный>1. Добавьте элементы, используя add(), addFirst() и addLast()

Примечание. Если очередь массива заполнена, все эти методы 105 , 115 и 128 выдает 132 .

Например,

26

Вывод

30

<сильный>2. Вставка элементов с помощью функций offer(), offerFirst() и offerLast()

Примечание. 175 , 181 и 194 возвращает 208 если элемент успешно вставлен; если очередь массива заполнена, эти методы возвращают 211 .

Например,

48

Вывод

56

Примечание. Если очередь массива заполнена

<час>

Доступ к элементам ArrayDeque

<сильный>1. Доступ к элементам с помощью getFirst() и getLast()

Примечание. Если очередь массива пуста, 270 и 280 выдает 291 .

Например,

69

Вывод

71

<сильный>2. Доступ к элементам с помощью методов peek(), peekFirst() и peekLast()

Например,

87

Вывод

97

Примечание. Если очередь массива пуста, 346 , 356 и 369 выдает 370 .

<час>

Удалить элементы ArrayDeque

<сильный>1. Удаление элементов с помощью методов remove(), removeFirst(), removeLast()

Примечание. Если очередь массива пуста, 432 , 448 и 459 метод выдает исключение. Кроме того, 463 генерирует исключение, если элемент не найден.

Например,

105 

Вывод

112

<сильный>2. Удаление элементов с помощью методов poll(), pollFirst() и pollLast()

  • 478 - возвращает и удаляет первый элемент массива deque
  • 489 - возвращает и удаляет первый элемент очереди массива (эквивалентно 492 )
  • 504 - возвращает и удаляет последний элемент очереди массива

Примечание. Если очередь массива пуста, 518 , 520 и 538 возвращает 545 если элемент не найден.

Например,

127

Вывод

132

<сильный>3. Удалить элемент:с помощью метода clear()

Чтобы удалить все элементы из очереди массива, мы используем 551 метод. Например,

144

Вывод

157
<час>

Итерация ArrayDeque

  • 565 - возвращает итератор, который можно использовать для перебора двухсторонней очереди массива
  • 575 - возвращает итератор, который можно использовать для перебора двухсторонней очереди массива в обратном порядке

Чтобы использовать эти методы, мы должны импортировать 580 упаковка. Например,

163

Вывод

177
<час>

Другие методы

Методы Описания
597 Возвращает элемент из головы двухсторонней очереди массива.
600 Выполняет поиск указанного элемента в двухсторонней очереди массива.
Если элемент найден, он возвращает 617 , если нет, возвращает 628 .
633 Возвращает длину очереди массива.
648 Преобразует deque массива в массив и возвращает его.
650 669 Создает копию двухсторонней очереди массива и возвращает ее.
<час>

ArrayDeque как стек

Чтобы внедрить LIFO (последним пришел – первым ушел) стеки в Java рекомендуется использовать deque поверх класса Stack. 673 класс, вероятно, будет быстрее, чем 682 класс.

696 предоставляет следующие методы, которые можно использовать для реализации стека.

  • 701 - добавляет элемент на вершину стека
  • 715 - возвращает элемент с вершины стека
  • 724 - возвращает и удаляет элемент из вершины стека

Например,

184

Вывод

195
<час>

ArrayDeque Vs. Класс LinkedList

Оба 733 и Java LinkedList реализует 745 интерфейс. Однако между ними существуют некоторые различия.

  • 758 поддерживает 761 элементы, тогда как 775 нет.
  • Каждый узел в связанном списке содержит ссылки на другие узлы. Вот почему 783 требуется больше места для хранения, чем 795 .
  • Если вы реализуете очередь или структуру данных deque, 809 скорее всего будет быстрее, чем 818 .

java

  1. Операторы Java
  2. Java-комментарии
  3. Java для каждого цикла
  4. Java-строки
  5. Java-интерфейс
  6. Анонимный класс Java
  7. Java-проба с ресурсами
  8. Java-аннотации
  9. Утверждения Java
  10. Java вектор