본문 바로가기
Programming/JAVA

[JAVA] - 스택(Stack)

by 꾸준함 2022. 12. 27.

스택(Stack)이란?

자료 구조 중 하나인 Stack의 사전적 정의는 '쌓다', '더미'입니다. 

Stack의 가장 큰 특징은 나중에 들어간 것이 먼저 나오는 (Last In First Out)의 형태입니다.

 

출처: 위키백과


스택(Stack)의 사용법

  • java.uitl.Stack을 import하여 사용
  • Stack<타입> 변수명 = new Stack<타입>(); 으로 선언 
import java.util.Stack;
Stack<String> s = new Stack<String>(); //String형 Stack선언

스택(Stack)의 연산

  • add(var) - 스택(Stack)에 var를 넣음. ( boolean형 리턴 true/false )
  • push(var) - 스택(Stack)에 var를 넣음 ( Exception 리턴 )
  • pop(var) - 스택(Stack)에서 맨 위에 있는 값을 꺼내옴.
  • peek() - 스택(Stack)에서 top에 있는 데이터를 반환.
  • search(var) - 스택(Stack)에서 var의 인덱스를 반환
Stack<Integer> stk = new Stack<>();

//추가
stk.add(1);		//stk에 1 추가
stk.push(2);	//stk에 2 추가

System.out.println(stk) // [1,2] 출력

//삭제
stk.pop() // 마지막에 추가된 2 빼기

System.out.println(stk) // [1] 출력

//값 리턴
System.out.println(stk.peek()) // 1 출력

//인덱스 값 찾기
stk.push(2);
System.out.println(stk.search(2)) // 1 출력  stk 0번째 인덱스에는 1이 들어가있고, 1번째에는 2

'Programming > JAVA' 카테고리의 다른 글

JAVA Map - getOrDefault 사용법 및 예제  (0) 2023.03.12
[JAVA] -큐(Queue)  (0) 2022.12.30