[Java] 자바 Stack 클래스 사용 방법
- Language/JAVA
- 2021. 10. 8.
자바 Stack 클래스 사용 방법
Stack의 소개
시험이나 책에서 단골 소재로 소개되는 Stack은 FILO(First In Last Out)로 외우면 끝이다.
먼저 들어온 상자가 제일 나중에 나가듯이 먼저 들어온 데이터가 가장 나중에 나가는 구조를 가진 원리이다.
import java.util.Stack; //import 하기
Stack<String> stack = new Stack<>(); //String 형 Stack 선언
사용 방법은 Stack을 선언해서 사용하면 된다. 제네릭 부분에는 사용할 객체를 담으면 된다.
Stack의 사용
stack.push(값); //추가
stack.pop(); //삭제
먼저 Stack에 대해 설명을 했듯이, 들어오는 것만 값을 입력하고, 삭제는 값을 입력하지 않는다.
제일 마지막에 들어온 값이 제일 먼저 나가기 때문이다.
이 점을 이용해서, 다음과 같이 활용한다면 누구나 쉽게 접근할 수 있을 것이다.
Stack 추가 - push
stack에 1, 13, 27 순서로 등록되었다.
System.out.print로 출력할 때, stack에 순서대로 등록된 것을 확인할 수 있다.
Stack 삭제 - pop
pop를 추가하자, 27이 사라진 것을 확인 할 수 있다.
Stack의 구조대로 마지막 선언 값이 제일 먼저 사라진 것이다.
Stack 전체 삭제 - clear
Stack의 값이 많을 경우, 한 번에 비우는 방법은 clear 함수를 이용하면 된다.
stack의 모든 값을 삭제 할 수가 있다.
Stack의 마지막 값 확인 - peek
Stack의 가장 마지막 값을 출력할 수 있다.
다른 말로는 pop 할 때, 삭제 대상이 무엇인지 확인할 수 있다.
이 외의 Stack 메서드들
stack.push(10); //stack에 10 추가
stack.pop(); //stack의 마지막 push값 제거
stack.clear(); //stack의 전체 삭제
stack.peek(); //stack의 마지막 push값 확인
stack.size(); //stack의 배열 길이 수
stack.empty(); //stack이 비어있으면 true (있으면 false)
stack.contains(1); //stack에 값(1)이 들어있으면 true (없으면 false)
마무리
프로그래머스 문제를 풀면서, Stack 함수에 대한 문제가 나왔길래 stack에 대해 공부하게 되었다.
'Language > JAVA' 카테고리의 다른 글
[Java] Thread 활용하기 (0) | 2022.01.25 |
---|---|
Java, 메모장 파일 만들기 (0) | 2021.10.10 |
[Java] List의 toArray 사용하기 (List를 Array로 형변환 시키기) (0) | 2021.01.11 |
[Java] 배열의 오름차순, 내림차순 (0) | 2020.09.10 |
[Java] Null 과 isEmpty의 차이 (0) | 2020.09.10 |