Найти в Дзене
DEBAGanov

Java 842. Какая коллекция реализует дисциплину обслуживания FILO?

Дисциплина обслуживания FILO (First-In-Last-Out), также известная как LIFO (Last-In-First-Out), означает, что последний элемент, добавленный в коллекцию, будет первым, который будет удален из коллекции. Эта дисциплина обслуживания реализуется в стеках.

Коллекция java.util.Deque представляет собой интерфейс для работы со стеком и реализует дисциплину обслуживания FILO. Она имеет несколько реализаций, таких как:

  • java.util.LinkedList: двунаправленный связный список, который реализует интерфейсы List и Deque.
  • java.util.ArrayDeque: двусторонняя очередь на основе массива, которая также реализует интерфейсы List и Deque.

Пример использования интерфейса Deque:

Deque<String> stack = new ArrayDeque<>();
stack.push("first");
stack.push("second");
stack.push("third");

String thirdElement = stack.pop(); // "third"
String secondElement = stack.pop(); // "second"
String firstElement = stack.pop(); // "first"

В этом примере мы создаем объект типа ArrayDeque, который реализует интерфейс Deque. Затем мы добавляем три элемента в стек при помощи метода push(). Метод pop() удаляет и возвращает верхний элемент в стеке. В результате, если мы выведем значения переменных firstElement, secondElement и thirdElement, то увидим значения "first", "second" и "third", соответственно.

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov