Java에서 Queue 인터페이스는 FIFO(선입선출) 원칙을 따르는 대기열 데이터 구조를 나타냅니다. 즉, 대기열에 먼저 넣은 요소가 먼저 대기열에서 제거됩니다. 사용법: LinkedList는 Queue의 구현으로 사용됩니다. 요소가 큐에 추가된 다음, 헤드 요소는 poll 메소드를 통해 제거되고, 헤드 요소는 제거되지 않고 peek 메소드를 통해 획득되며, 마지막으로 큐의 요소는 다음과 같습니다. 반복을 통해 통과했습니다.
이 튜토리얼의 운영 체제: Windows 10 시스템, Dell G3 컴퓨터.
Java에서 Queue 인터페이스는 FIFO(선입선출) 원칙을 따르는 대기열 데이터 구조를 나타냅니다. 즉, 먼저 입력된 요소가 먼저 대기열에서 제거됩니다. Queue 인터페이스는 대기열을 작동하기 위한 몇 가지 메소드를 정의하는 Collection 인터페이스에서 상속됩니다. Queue 인터페이스에는 LinkedList와 PriorityQueue라는 두 가지 주요 구현 클래스가 있습니다.
다음은 일반적으로 사용되는 대기열 인터페이스 방법입니다.
1. add(E e) / Offer(E e): 지정된 요소를 대기열에 삽입합니다. add 메소드는 대기열이 가득 차면 예외를 발생시키고, Offer 메소드는 삽입이 성공했는지 여부를 나타내는 특수 값(예: true 또는 false)을 반환합니다.
Queue<String> queue = new LinkedList<>(); queue.add("Element 1"); queue.offer("Element 2");
2.remove() / poll(): 대기열의 헤드 요소를 제거하고 반환합니다. 제거 메소드는 대기열이 비어 있을 때 예외를 발생시키고, 폴링 메소드는 제거가 성공했는지 여부를 나타내는 특수 값(예: null)을 반환합니다.
String element = queue.remove(); String elementOrNull = queue.poll();
3.element() / peek(): 대기열의 헤드 요소를 반환하지만 제거하지는 않습니다. 요소 메서드는 대기열이 비어 있을 때 예외를 발생시키고, peek 메서드는 획득 성공 여부를 나타내는 특수 값(예: null)을 반환합니다.
String peekedElement = queue.element(); String peekedElementOrNull = queue.peek();
4.size(): 대기열에 있는 요소 수를 반환합니다.
int size = queue.size();
5.isEmpty(): 대기열이 비어 있는지 확인합니다.
boolean isEmpty = queue.isEmpty();
6.clear(): 대기열의 모든 요소를 지웁니다.
queue.clear();
7. 기타 메소드: 위의 기본 메소드 외에도 Queue 인터페이스는 컬렉션 작업을 지원하기 위해 addAll,removeAll,retainAll 등과 같은 다른 메소드도 정의합니다.
다음은 Queue 인터페이스를 사용하는 방법을 보여주는 간단한 예입니다.
import java.util.LinkedList; import java.util.Queue; public class QueueExample { public static void main(String[] args) { Queue<String> queue = new LinkedList<>(); // 添加元素 queue.offer("Element 1"); queue.offer("Element 2"); queue.offer("Element 3"); // 获取并移除头部元素 String removedElement = queue.poll(); System.out.println("Removed Element: " + removedElement); // 获取头部元素但不移除 String peekedElement = queue.peek(); System.out.println("Peeked Element: " + peekedElement); // 遍历队列 System.out.println("Queue Elements:"); for (String element : queue) { System.out.println(element); } } }
이 예에서는 LinkedList가 Queue 구현으로 사용되고 요소가 대기열에 추가된 다음 폴링을 통해 헤드 요소가 제거됩니다. peek 메소드는 헤드 요소를 제거하지 않고 획득하고 마지막으로 큐의 요소를 반복합니다.
위 내용은 Java 대기열 대기열을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!