LIFO(Last In First Out) 구조이며, 깊이 우선 탐색(DFS), 재귀함수 호출에서 사용된다.
Stack 선언 방법
Stack st = new Stack(); // 타입 설정x Object로 선언
Stack<Integer> i = new Stack<Integer>(); // Integer타입 선언
Stack<Integer> i2 = new Stack<>(); // 타입 생략 가능
Stack<String> s = new Stack<String>(); // String타입 선언
Stack<Character> ch = new Stack<Character>(); // Char타입 선언
Stack 기초 명령어 예제
→Stack값 추가
public class Main {
public static void main(String[] args) {
Stack<Integer> stack = new Stack<>(); //int형 스택 선언
stack.push(1); // stack에 값 1 추가
stack.push(2); // stack에 값 2 추가
stack.push(3); // stack에 값 3 추가
}
}
→Stack값 삭제
public class Main {
public static void main(String[] args) {
Stack<Integer> stack = new Stack<>(); //int형 스택 선언
stack.pop(); // stack의 상단 값 제거
stack.clear(); // stack의 전체 값 제거 (초기화)
}
}
→Stack 기타 명령어
public class Main {
public static void main(String[] args) {
Stack<Integer> stack = new Stack<>(); //int형 스택 선언
stack.peek(); // stack의 가장 상단의 값 출력
stack.size(); // stack의 크기 출력
stack.empty(); // stack이 비어있는지 확인 (비어있다면 true)
stack.contains(1); // stack에 1이 있는지 check (있다면 true)
stack.indexOf(2); // stack의 2번째 index를 반환
}
}
'자바' 카테고리의 다른 글
HashSet기초 (자바) (0) | 2023.01.07 |
---|---|
Vector 기초 (자바) (0) | 2023.01.07 |
LinkedList 기초 (자바) (0) | 2023.01.06 |
ArrayList 기초 (자바) (0) | 2023.01.06 |
Collection(List, Set, Queue, Map) (0) | 2023.01.06 |