본문 바로가기
Language/Java

자바 Queue 예제부터 사용법까지

by wakestand 2020. 2. 23.
반응형

자바에서 Queue는 Stack과 많이 비교되곤 하는데

 

자바 Stack 예제부터 사용방법까지

자바에서 Stack의 주요 특징은 나중에 넣은게 먼저 나온다는 것인데 이것을 LIFO (Last In First Out) 이라고 한다 1,2,3을 차례대로 넣고 꺼낼 시 3,2,1 순으로 나온다는 것 Stack의 주요 메소드는 아래와 같다..

wakestand.tistory.com

Queue는 먼저 들어간게 먼저 나오지만(FIFO, First In First Out)

Stack은 마지막에 들어간게 먼저 나온다(LIFO, Last In First Out)

 

Queue<데이터형> 큐명 = new LinkedList<데이터형>();

이런 식으로 생성하며

 

큐명.offer() 로 Queue 안에 값을 넣고

큐명.poll() 로 Queue 안에 값을 빼내는 것이 주 기능인데

 

Queue의 주요 메소드는 다음과 같다

 

큐 안에 값 넣기

큐명.offer(값);

 

큐 다음 출력 값 확인하기

큐명.peek();

 

큐 안의 값 출력하기

큐명.poll();

 

큐 안의 특정 값 빼기

큐명.remove(값);

 

큐 크기 확인

큐명.size();

 

큐 비우기

큐명.clear();

 

큐 비어있는지 확인

큐명.isEmpty();

 

테스트에 사용한 코드는 아래와 같다

 

import java.util.LinkedList;
import java.util.Queue;

public class QueueExample {

	public static void main(String[] args) {
		Queue<String> que = new LinkedList<String>();
		
		que.offer("김철수");
		que.offer("이영희");
		que.offer("김영수"); // Queue에 값 추가
		
		// Queue에 김영수 들어있는지 확인
		System.out.println("Queue 값 포함 여부 :" + que.contains("김영수"));
		// Queue에 다음에 나올 값 확인
		System.out.println("Queue 다음 출력값 확인 : " + que.peek());
		// Queue 크기 확인
		System.out.println("Queue 크기 확인 : " + que.size());
		
		for(int i = 0; i<que.size();) {
			// Queue 안의 값 꺼내기
			System.out.println(que.poll());
		}
		
		// Queue 비우기
		que.clear();
		// Queue 비었는지 확인
		System.out.println("Queue 비었는지 여부 : " + que.isEmpty());
		
	}

}
반응형

댓글