Ответ 1
Да. Queue
LinkedList является самой тривиальной конкретной реализацией.
Мне нужна простая реализованная FIFO очередь для хранения пучка int (я не против, если это реализация generics).
Что-нибудь уже запеченное для меня в java.util
или в библиотеке Trove/Guava?
Да. Queue
LinkedList является самой тривиальной конкретной реализацией.
Вот пример кода для использования встроенной очереди FIFO java:
public static void main(String[] args) {
Queue<Integer> myQ=new LinkedList<Integer>();
myQ.add(1);
myQ.add(6);
myQ.add(3);
System.out.println(myQ); //1 6 3
int first=myQ.poll();// retrieve and remove the first element
System.out.println(first);//1
System.out.println(myQ);//6 3
}
ArrayDeque
, вероятно, самая быстрая объектная очередь в JDK; У Trove есть интерфейс TIntQueue
, но я не знаю, где живут его реализации.
Queue
- это интерфейс, который расширяет Collection
в Java. Он имеет все функции, необходимые для поддержки архитектуры FIFO
.
Для конкретной реализации вы можете использовать LinkedList
. LinkedList реализует Deque
, который, в свою очередь, реализует Queue
. Все это часть пакета java.util
.
Подробнее о методе с примером примера можно найти Реализация очереди на основе FIFO в Java.
Да, эти вещи встроены в Java. Только один пример здесь. Имейте поиск google о очередях в java, и thats это.