13-2 / LIFO와 FIFO 컬렉션
* 후입선출 (LIFO / Last In First Out) : 나중에 넣은 객체가 먼저 빠져나가는 자료구조
* 선입선출 (FIFO / First In First Out) : 먼저 넣은 객체가 먼저 빠져나가는 자료구조
컬렉션 프레임워크에는 LIFO 자료구조를 제공하는 Stack 클래스와 FIFO 자료구조 제공하는 Queue 인터페이스 제공

stack
LIFO 자료구조를 구현한 클래스
- stack 클래스의 주요 메소드
| 리턴 타입 | 메소드 | 설명 |
| E | push(E item) | 주어진 객체를 스택에 넣는다 |
| E | peek() | 스택의 맨 위 객체를 가져온다. 객체를 스택에서 제거하지 않는다. |
| E | pop() | 스택의 맨 위 객체를 가져옵니다. 객체를 스택에서 제거한다. |
Stack<E> stack = new Stack<E>();
Stack<E> stack = new Stack<>();
Queue
Queue 인터페이스는 FIFO 자료구조에서 사용되는 메소드를 정의하고 있다.
- Queue 인터페이스에 정의된 메소드
| 리턴 타입 | 메소드 | 설명 |
| boolean | offer(E e) | 주어진 객체를 넣는다. |
| E | peek() | 객체 하나를 가져온다. 객체를 큐에서 제거하지 않는다. |
| E | poll() | 객체를 하나 가져온다. 객체를 큐에서 제거한다. |
Queue 인터페이스를 구현한 대표적인 클래스는 LinkedList이다.
Queue<E> queue = new LinkedList<E>();
Queue<E> queue = new LinkedList<>();
'Programming > Java' 카테고리의 다른 글
| 혼공자바] 14-1 입출력 스트림 (0) | 2022.12.27 |
|---|---|
| 혼공자바] 13-1 컬렉션 프레임 (1) | 2022.12.27 |
| 혼공자바] 12-2 스레드 제어 (0) | 2022.12.19 |
| 혼공자바] 12-1 멀티 스레드 (1) | 2022.12.15 |
| 혼공자바] 11 기본 API 클래스 (0) | 2022.12.14 |
