ArrayDeque, работает не так как ожидаю

179
25 июля 2018, 22:40

Проблемы с пониманием работы ArrayDeque, а именно с заданием размерности.

Deque<String> data = new ArrayDeque<>(5);

После в цикле из консоли добавляем туда строки,

if (!data.offer(command)) {
    System.out.println("Полна коробочка(");
}

Ожидаю после добавления 5 элементов получить false. Хотя в документации сказано:

Resizable-array implementation of the Deque interface. Array deques have no capacity restrictions;

  1. Как добиться желаемого поведения без горотьбы чего-то на подобии этого:

    if (airport.size() < 5) {
        airport.offer(command);
    } else {
        System.out.println("Полна коробочка(");
    }
    
  2. При каких условиях добавление элемента вернёт false или исключение?

Answer 1

Использовать BlockingDeque вместо ArrayDeque.

READ ALSO
Создание анимированных персонажей

Создание анимированных персонажей

Хочу спроситьКакие технологии используются для создания анимированных персонажей на платформа Android и/или iOS

190
Фоновая музыка в играх и приложениях, каковы лучшие практики. Библиотеки

Фоновая музыка в играх и приложениях, каковы лучшие практики. Библиотеки

Основной мой вопрос в том, что я хочу понять архитектуру подобного приложенияКакие классы и с каким отношением встроить

204
Анимация переворота карты

Анимация переворота карты

Делаю простенькую карточную игруРазложено несколько карт и я хочу, чтобы при нажатии на любую из них она переворачивалась с использованием...

163
Как хранить и редактировать данные?

Как хранить и редактировать данные?

Есть два устройства ардуино, на ней работает акваконтроллер, и андроид-устройство(телефон) на котором я хочу редактировать настройки контроллераВидится...

169