반응형
해당 글에서는 Java 11 버전을 기준으로 Stack 인터페이스를 구현한 클래스인 Stack의 메서드의 API에 대해서 확인합니다.
1) Stack
💡 스택(Stack)이란?
- 데이터를 일시적으로 쌓아두기 위한 자료구조 중 하나로, 후입선출(LIFO, Last-In-First-Out)의 특성을 가집니다.
- Java에서 스택은 java.util.Stack 클래스를 이용해 구현할 수 있습니다.
[참고] Stack에 대해서 궁금하시면 아래의 글을 참고하면 도움이 됩니다.
[참고] Stack의 인터페이스와 구현체에 대해 궁금하시면 아래의 글을 참고하면 도움이 됩니다.
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을 반환합니다. |
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 | 스택 변환 | 벡터(스택)의 문자열 표현을 반환합니다. |
3) [참고] 스택을 활용한 문제 풀기
반응형
'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 |