[java] 자바 큐 인터페이스의 사용법
자바 프로그래밍에서 큐(Queue)는 데이터를 선입선출(FIFO) 방식으로 저장하고 액세스하는 데 사용되는 자료구조입니다. 자바에서는 java.util.Queue
인터페이스를 사용하여 큐를 구현합니다. 이 문서에서는 Queue
인터페이스의 주요 메서드를 사용하는 방법을 알아보겠습니다.
1. Queue 인터페이스 구현 클래스
Queue
인터페이스는 자바 컬렉션 프레임워크의 일부로 제공되며, 다양한 구현 클래스를 가질 수 있습니다. 가장 널리 사용되는 구현 클래스로는 LinkedList
와 ArrayDeque
가 있습니다.
LinkedList
를 사용하여 큐를 만들려면 다음과 같이 코드를 작성합니다.
import java.util.Queue;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
Queue<String> queue = new LinkedList<>();
// 큐에 요소 추가
queue.add("A");
queue.add("B");
queue.add("C");
// 큐에서 요소 추출
String element = queue.remove();
System.out.println("Removed element: " + element);
}
}
ArrayDeque
를 사용하여 큐를 만들려면 다음과 같이 코드를 작성할 수 있습니다.
import java.util.Queue;
import java.util.ArrayDeque;
public class Main {
public static void main(String[] args) {
Queue<String> queue = new ArrayDeque<>();
// 큐에 요소 추가
queue.offer("X");
queue.offer("Y");
queue.offer("Z");
// 큐에서 요소 추출
String element = queue.poll();
System.out.println("Polled element: " + element);
}
}
2. Queue 인터페이스의 주요 메서드
Queue
인터페이스는 다음과 같은 주요 메서드를 제공합니다.
add(E e)
: 요소를 큐에 추가하고 성공 여부를 반환합니다.offer(E e)
: 요소를 큐에 추가하고 성공 여부를 반환합니다.remove()
: 큐의 맨 앞에 있는 요소를 제거하고 반환합니다.poll()
: 큐의 맨 앞에 있는 요소를 제거하고 반환합니다. 큐가 비어있을 경우null
을 반환합니다.element()
: 큐의 맨 앞에 있는 요소를 반환하지만 제거하지는 않습니다. 큐가 비어있을 경우NoSuchElementException
을 발생시킵니다.peek()
: 큐의 맨 앞에 있는 요소를 반환하지만 제거하지는 않습니다. 큐가 비어있을 경우null
을 반환합니다.
이와 같이 Queue
인터페이스는 데이터를 관리하는 데 유용한 여러 메서드를 제공하여 프로그래밍을 편리하게 합니다.
위에서 소개된 내용은 Queue
인터페이스의 주요 메서드와 구현 클래스를 사용하는 방법에 대한 간단한 예시를 다루었습니다. 자세한 내용은 Oracle Java Documentation를 참조하시기 바랍니다.