본문 바로가기
수업(국비지원)/Java

[Java] chap13 : 컬렉션 프레임워크 - StackQueue

by byeolsub 2023. 4. 17.
  • Stack 클래스
Stack 클래스 : LIFO(Last In First Out) 집어넣은 순서는 유지   <후입선출>
               Vector의 하위클래스
    - push(Object) : Stack에 객체 저장
    - Object pop() : Stakc에서 객체 제거. 반환
    - Object peek() : Stack에서 객체 반환.(조회만 해준다.)     
    
  Queue 인터페이스 : FIFO(First In First Out)                 <선입선출>
                  LinkedList가 구현 클래스
                  순서를 아주 중요하게 생각할 때 사용한다.
    - offer(Object) : Queue에 객체 저장
    - Object poll() : Queue에서 객체 제거 반환
    - Object peek() : Queue에서 객체 반환. (조회만 해준다.)                     

 

📌

package chap13;

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

public class StackQueueEx1 {
	public static void main(String[] args) {
		String cars[] = {"소나타","그랜저","SM5","K9"}; //배열
		Stack <String> stack = new Stack<>(); //Stack<>() : Vector의 하위객체.<- List 객체
		for(String s : cars) stack.push(s);
		System.out.println("스택의 요소개수:"+stack.size()); //4
		System.out.println(stack.peek()); //"K9"
		System.out.println("스택의 요소개수:"+stack.size()); //4
		System.out.println(stack.pop()); //"K9"
		System.out.println("스택의 요소개수:"+stack.size()); //3
		
		Queue <String> queue = new LinkedList<>();
		for(String s : cars) queue.offer(s);
		System.out.println("큐의 요소개수:"+queue.size()); //4
		System.out.println(queue.peek()); //"소나타"
		System.out.println("큐의 요소개수:"+queue.size()); //4
		System.out.println(queue.poll()); //"소나타"
		System.out.println("큐의 요소개수:"+queue.size()); //3
	}
}