package com.use.java;
import java.util.*; //import java.util.Stack;
public class test {
//Stack은 LIFO구조 가지고 있는 자료구조
//DFS에서 사용
//재귀적 함수를 호출 할 때 사용
public static void main(String[] args) {
//선언
Stack<Integer> stack = new Stack<>();
Stack<String> charStack = new Stack<>(); //char형 스택 선언
//stack값 추가 => push(value) 메서드 사
stack.push(1);
stack.push(2);
stack.push(3);
//stack의 가장 상단의 값 출력
System.out.println(stack.peek()); //3
//stack값 제거 => pop() 메서드 사용
System.out.println(stack.pop()); //3
stack.pop();
stack.pop();
stack.clear(); // 값 전체 제거 = 초기
//stack의 기타 메서드
stack.push(1);
stack.push(2);
System.out.println(stack.size()); //stack크기 출력 : 2
System.out.println(stack.empty()); //stack이 비어있는지 확인(비어있다면 true반환) : false
System.out.println(stack.contains(1)); //stack에 1이 있는지 check (있다면 true반환) : true
}
}