Deque — это линия с двойными концами. Это может добавлять и удалять элементы данных из головы или хвоста структуры данных. Это может использоваться либо как FIFO, либо как LIFO. Представления FIFO и LIFO — это Queue и Stack в Java соответственно.

Так ощущается диаграммный характер работы. Двигаясь дальше, мы включили несколько методов в deque. Давайте посмотрим на это.

Исключение очереди

Поскольку Java Deque — это интерфейс, вам необходимо немедленно реализовать интерфейс, чтобы использовать его на практике. В API коллекций Java вы можете выбирать между следующими реализациями Deque:

Чтобы получить углубленные знания о Java, вы можете записаться на живую демонстрацию на Java Training.

LinkedList: java.util.
Java.util. DequeArray

Класс LinkedList — это относительно простая реализация Deque и Queue. Он использует связанный список для моделирования очереди или очереди.

Класс Java ArrayDeque динамически сохраняет свои элементы в массив. Когда количество элементов в массиве превышает пространство, назначается новый массив, и все элементы передаются. Другими словами, даже если он хранит свои элементы в массиве, ArrayDeque растет по мере необходимости.

Создание Deque на Java

Перед использованием Java Deque вам необходимо создать экземпляр одного из классов, реализующих интерфейс Deque. Вот пример создания экземпляра Java Deque путем создания экземпляра LinkedList:

Deque deque = LinkedList( )new;

Вот еще один пример разработки Java Deque путем создания экземпляра в ArrayDeque:

Deque dek = new ArrayDek);

Стандартная двухсторонняя очередь в Java

Вы можете загрузить любой объект в Java Deque по умолчанию. Однако, используя Java Generics, вы можете ограничить типы объектов, которые вы можете внедрить в Deque. Возьми пример здесь.

Поднимите свою карьеру на новый уровень успеха с Курсом Java

Deque < MyObject > deque = new LinkedList);

Теперь в эту Deque могут быть встроены только экземпляры MyObject. Затем вы можете получить доступ к элементам без их приведения и повторения. Вот как все выглядит.

MyObject = deque.remove);
For(MyPurpose: deque)
/Do anObject submit ...
}

При определении переменной Java Deque считается хорошей практикой всегда указывать универсальный тип. Таким образом, компилятор позволит вам тестировать типы, которые вставляются в Deque, и вам не нужно приводить объекты, когда вы снова удаляете их из Deque. Более того, следующему человеку, читающему ваш код, становится яснее, какой тип объектов должен содержать этот Deque.

Просмотрите учебник Java Generics Tutorial для получения дополнительной информации о Java Generics.

Добавить элемент в Deque в Java

Вы можете добавлять элементы как в начало, так и в конец Deque. Интерфейс Deque в Java содержит следующие методы для добавления к нему элементов:

Следующие части прояснят такие процессы.

Добавить()

Используя метод add(), вы добавляете элементы в начало очереди Deque. Вот пример добавления элемента в конец Java Deque (хвост):

Deque < String > deque = ArrayDeque < >( )new;
Deque.add("figure 1);

Если элемент не может быть вставлен в Deque, процесс add() сгенерирует исключение. Это отличается от метода offer(), который возвращает false, если элемент не может быть вставлен.

Действительно, метод add() унаследован от интерфейса Queue.

Добавить последним

Метод addLast() также добавляет один элемент в конец (хвост) Java Deque. Это эквивалент метода add(), унаследованного от интерфейса Queue в интерфейсе Deque. Вот пример добавления элемента в экземпляр в Java Deque с помощью метода addLast):

Deque < String > deque = ArrayDeque < >( )new;
Deque.addLast('the element 1);

Если элемент не может быть вставлен в Deque, процесс addLast() сгенерирует исключение. Это отличается от метода offerLast(), который возвращает false, когда элемент не может быть добавлен в Deque.

Добавить Прайм)

Вместо завершения Java Deque вы вызываете метод addFirst() для добавления элемента в начало (заголовок). Вот пример добавления элемента в начало Java Deque (заголовок):

пункт 1);

Если элемент не может быть добавлен к инициализации Deque, процесс addFirst() сгенерирует исключение. Это отличается от метода offerFirst(), который возвращает false, если элемент не может быть вставлен в начале Deque.

Предложение) — Предложение)

Элемент добавляется в конец Deque (хвост) методом offer(). Если добавление товара эффективно, метод offer() возвращает значение true. Если добавление элемента не удается, например. если Deque завершен, то метод offer() возвращает false. Это отличается от метода add(), который выдает исключение, вставляя элемент, который не работает, в конце Deque. Вот пример того, как добавить элемент с помощью метода offer() для завершения Java Deque.

Deque < String > deque = ArrayDeque < >( )new;
Deque.offer('Item 1);
BidLast)

Метод offerLast() добавляет элемент в конец Deque (хвост), как и offer). Имя метода offerLast() немного больше говорит о том, где элемент применяется к Deque. Если добавление элемента прошло успешно, метод offerLast() возвращает значение true. Если добавление элемента не удалось, например. если Deque завершен, то метод offerLast() возвращает false. Это отличается от метода addLast(), который выдает исключение, добавляя элемент к ошибкам в конце Deque. Вот пример того, как подключить элемент к концу Java Deque с помощью метода offerLast):

Deque < String > deque = ArrayDeque < >( )new;
Deque.offerLast('the 1 "element);
FirstBid)

Метод offerFirst() добавляет элемент в начало Deque (заголовок). Если элемент успешно добавлен, метод offerFirst() возвращает значение valid. Если добавление элемента не удается, например. если Deque завершен, то метод offerFirst() возвращает false. Это отличается от метода addFirst(), который выдает исключение, добавляя элемент в Deque при неудачной инициализации. Вот пример того, как добавить элемент в начало Java Deque с помощью метода offerFirst):

Deque < String > deque = ArrayDeque < >( )new;
Deque.offerFirst('the element 1);
Push)-Push)

Метод push() добавляет элемент в начало (заголовок) процесса Java Deque. Если добавить элемент не удается, метод push() вызовет исключение, например, если Deque завершен. Это похоже на то, как работает метод addFirst(). Вот пример добавления элемента в Java Deque start с помощью метода push):

Deque < string > deque = LinkedList < >( )new;
Deque.push("set 0);

В Item in Deque, Peek

Вы можете просмотреть первый и последний элементы Java Deque. Просмотр элемента означает получение ссылки на элемент без удаления элемента из Deque. Используя эти методы, вы можете просмотреть первый и последний элемент Java Deque:

Следующие разделы должны охватывать оба этих подхода.

Глянуть)-Глянуть)

Метод peek() возвращает первый элемент, не удаляя его из начала (заголовка) очереди Java Deque. Если Deque пуст, он возвращает null для просмотра). Вот пример просмотра первого элемента в Java Deque с использованием метода peek):

Deque < String > deque = ArrayDeque < >( )new;
Deque.add("Element 1);
Deque.add('ultimate element);
FirstElement string = for deque.peek);

Первый элемент будет указывать на первый элемент String, добавленный в Deque после запуска этого кода: «первый элемент».

Заключение

Надеюсь, вы пришли к выводу о Deque в Java. Вы можете узнать больше на онлайн-обучении по Java.