해당 글에서는 Java 11 버전을 기준으로 Stack 인터페이스를 구현한 클래스인 Stack의 메서드의 API에 대해서 확인합니다.
1) Stack
💡 스택(Stack)이란?
- 데이터를 일시적으로 쌓아두기 위한 자료구조 중 하나로, 후입선출(LIFO, Last-In-First-Out)의 특성을 가집니다.
- Java에서 스택은 java.util.Stack 클래스를 이용해 구현할 수 있습니다.

[참고] Stack에 대해서 궁금하시면 아래의 글을 참고하면 도움이 됩니다.
[Java/자료구조론] 선형구조 이해하기 -1 : 큐(Queue), 스택(Stack), 덱(Deque)
해당 글에서는 자료구조론 중 선형 구조인 큐(Queue)와 스택(Stack), 덱(Deque)에 대해서 이해하고 언제 사용하며 각각의 장단점이 무엇인지에 대해 알아보기 위한 글입니다. 1) 선형 구조(Linear structure
adjh54.tistory.com
[참고] Stack의 인터페이스와 구현체에 대해 궁금하시면 아래의 글을 참고하면 도움이 됩니다.
[Java] Collection Framework(Queue, Stack, Deque)의 인터페이스와 구현체 이해하기 -2 : 정의 및 예시
해당 글에서는 컬렉션 프레임워크(Collection Framework)내에서 사용되는 인터페이스와 이를 구현하는 구현체 간의 관계를 이해하기 위한 목적으로 작성한 글입니다. 💡 이전 Collection Framework로 List, M
adjh54.tistory.com
2) Stack Class Method
💡 해당 API 문서는 Java 11 버전을 기준으로 요약 정리한 API Doucument입니다.
💡 "분류" 부분은 개인적인 기준으로 분류를 하였으니 참고하시면 도움이 될 것 같습니다.
1. Stack 주요 메서드
메서드 | 리턴 값 | 분류 | 설명 |
push(E item) | void | 스택 요소 추가 | 스택에 요소를 추가합니다. |
pop() | E | 스택 요소 제거 | 스택의 맨 위 요소를 제거하고 반환합니다. |
peek() | E | 스택 요소 조회 | 스택의 맨 위 요소를 반환하며, 제거하지 않습니다. |
empty() | boolean | 스택 조회 | 스택이 비어 있는지 여부를 반환합니다. |
search(Object o) | int | 스택 조회 | 주어진 요소를 스택에서 찾아서 1부터 시작하는 인덱스를 반환합니다. 찾지 못한 경우 -1을 반환합니다. |
Stack (Java SE 11 & JDK 11 )
docs.oracle.com
2. java.util.Vector <E> class 메서드
💡 java.util.Vector<E> 클래스 란?
- Java Collections Framework의 일부로 제공되며 동적으로 크기가 조정되는 배열과 유사한 데이터 구조를 나타내는 클래스입니다.
- 이 클래스는 java.util.ArrayList 클래스와 매우 유사하지만, java.util.Vector <E> 클래스는 멀티스레드 환경에서 안전하게 사용할 수 있도록 동기화(synchronization)가 되어 있습니다.
💡 java.util.Stack에서는 java.util.Vector<E> 클래스를 상속받아서 사용합니다. 따라서 java.util.Stack에서는 java.util.Vector <E>의 모든 기능을 포함하고 있습니다.

메서드 | 리턴 값 | 분류 | 설명 |
add(E element) | boolean | 스택 요소 추가 | 벡터(스택)의 끝에 지정된 요소를 추가합니다. |
add(int index, E element) | void | 스택 요소 추가 | 지정된 위치에 지정된 요소를 삽입합니다. |
addAll(Collection<? extends E> c) | boolean | 스택 요소 추가 | 지정된 컬렉션의 모든 요소를 벡터(스택) 끝에 추가합니다. |
addAll(int index, Collection<? extends E> c) | boolean | 스택 요소 추가 | 지정된 위치에 지정된 컬렉션의 모든 요소를 삽입합니다. |
set(int index, E element) | E | 스택 요소 변경 | 지정된 위치에 있는 요소를 새 요소로 바꿉니다. |
isEmpty() | boolean | 스택 요소 조회 | 벡터(스택)가 비어 있는지 여부를 반환합니다. |
contains(Object o) | boolean | 스택 요소 조회 | 지정된 요소가 벡터(스택)에 포함되어 있는지 여부를 반환합니다. |
indexOf(Object o) | int | 스택 요소 조회 | 지정된 요소의 인덱스를 반환합니다. |
elementAt(int index) | E | 스택 요소 조회 | 지정된 인덱스에 있는 요소를 반환합니다. |
get(int index) | E | 스택 요소 조회 | 지정된 위치에 있는 요소를 반환합니다. |
firstElement() | E | 스택 요소 조회 | 벡터(스택)의 첫 번째 요소를 반환합니다. |
lastElement() | E | 스택 요소 조회 | 벡터(스택)의 마지막 요소를 반환합니다. |
capacity() | int | 스택 정보 조회 | 현재 용량을 반환합니다. |
size() | int | 스택 정보 조회 | 벡터(스택)의 크기를 반환합니다. |
clear() | void | 스택 요소 삭제 | 모든 요소를 벡터(스택)에서 제거합니다. |
remove(int index) | E | 스택 요소 삭제 | 지정된 위치에 있는 요소를 제거합니다. |
remove(Object o) | boolean | 스택 요소 삭제 | 지정된 요소를 벡터(스택)에서 제거합니다. |
removeAll(Collection<?> c) | boolean | 스택 요소 삭제 | 지정된 컬렉션에 포함된 모든 요소를 벡터(스택)에서 제거합니다. |
toArray() | Object[] | 스택 변환 | Object 배열로 벡터(스택)를 반환합니다. |
toString() | String | 스택 변환 | 벡터(스택)의 문자열 표현을 반환합니다. |
Vector (Java SE 11 & JDK 11 )
Increases the capacity of this vector, if necessary, to ensure that it can hold at least the number of components specified by the minimum capacity argument. If the current capacity of this vector is less than minCapacity, then its capacity is increased by
docs.oracle.com
3) [참고] 스택을 활용한 문제 풀기
[Java/자료구조] 스택(Stack)/큐(Queue) 이해하기 -2 : 문제로 이해하기
해당 글에서는 스택 / 큐에 대해서 다양한 문제를 통해서 이해 및 활용 방법에 대해서 이해를 돕기 위해 작성한 글입니다. 💡 스택과 큐에 대한 상세한 이론에 대해서 공부를 하고 싶으시면 아
adjh54.tistory.com
'Java > API Document' 카테고리의 다른 글
[Java/API] WebClient Method API Document : Java 11 (0) | 2023.08.14 |
---|---|
[Java/API] Priority Queue Method API Document : Java 11 (0) | 2023.07.20 |
[Java/API] Queue Method API Document : Java 11 (0) | 2023.07.15 |
[Java/API] HashMap Method API Document : Java 11 (0) | 2023.05.29 |
[Java/API] ArrayList Method API Document : Java 11 (0) | 2023.05.29 |