В Java интерфейс Queue предоставляет три разных метода для доступа к элементам: peek(), poll() и remove(). Каждый метод работает по-разному, особенно когда очередь пустая.
Главное отличие между этими методами проявляется, когда в очереди нет элементов:
| Метод | Возвращает | Поведение |
|---|---|---|
peek() | null | Возвращает null без выброса исключения |
poll() | null | Возвращает null без выброса исключения |
remove() | Исключение | Выбрасывает NoSuchElementException |
Основные различия: peek() не удаляет элементы, а poll() и remove() удаляют оба. Кроме того, poll() возвращает null для пустых очередей, а remove() выбрасывает исключение. Выбирай в зависимости от того, нужно ли тебе удалить элемент и как ты хочешь обрабатывать ситуацию с пустой очередью.
Метод peek() изменяет очередь, удаляя элемент из головы, а poll() извлекает его без изменений.
Новый — ещё не проверен сообществом
Вы