자료구조

자 바 스 택 클 래 스

새우는 맛있새우 2024. 12. 10. 15:38

https://ittrue.tistory.com/200

 

[Java] 자바 스택(Stack) 클래스 메서드 정리 및 활용

스택이란? 스택은 ‘쌓다.’, ‘쌓이다.’와 같은 뜻을 가진 용어로, 접시를 높이 쌓아 놓은 형태와 비슷한 자료구조이다. 즉, 데이터를 순서대로 쌓는 자료구조이다. 실생활에서 흔히 접할 수

ittrue.tistory.com

압도적 감사!


스택의 선언

스택의 선언은 Stack<T> 스택 이름 = new Stack<>(); 형태로 선언할 수 있으며, 데이터 타입은 클래스 또는 래퍼 클래스로 선언할 수 있다.

import java.util.Stack;

class StackEx {
    public static void main(String[] args) {
        // Integer형 스택 선언
        Stack<Integer> stackInt = new Stack<>();
        // String형 스택 선언
        Stack<String> stackStr = new Stack<>();
        // Boolean형 스택 선언
        Stack<Boolean> stackBool = new Stack<>();
    }
}

출처: https://ittrue.tistory.com/200 [IT is True:티스토리]

 

Stack<반환형> 이름 = new Stack<>();

 


매서드 정리

1.push(),add()

2.peek()

3.pop()

4.isEmpty()

 


1. push()와 add() 의 차이

import java.util.Stack;

public class EXX {
    public static void main(String[] args) {

        Stack<Integer> stk = new Stack<>();
        
        stk.add(1);
        //그냥 1을 추가.
        
        System.out.println(stk.push(2));
        //2를 추가하는데 Integer값을 반환해서 출력!
        
        System.out.println(stk.add(3));
        //3을 추가하는데 Boolean값을 반환한다!! 나 잘 넣었어요~
        
        stk.push(4);
        //그냥 4를 추가
        
        System.out.println(stk);
        //stk를 출력!
    }
}

반환되는 값의 차이이다.

push()는 Integer값

add()는 Boolean값

굳!


2.peek()

스택에 들어있는 맨 마지막 값 반환! 꺼내는 입장에서는 젤 처음값.

스택에는 변화를 전혀 주지 않는다.

두번 출력해도 똑같이 4가 나온다.

System.out.println(stk.peek());
//4출력
System.out.println(stk.peek());
//4출력

3.pop()

stk.pop();
//4를 제거하고 그값을 반환해준다! 남은 스택:[1,2,3]
System.out.println(stk.pop());
//3을 스택에서 제거하고 그 값을 반환해준다! 반환된것을 출력! 남은 스택:[1,2]
System.out.println(stk);
//스택 출력[1,2]

pop()은 peek()와는 다르게 스택에 들어있는 맨 마지막 값을 반환 해줌 과 동시에 그 값을 제거 한다.


4.isEmpty()

System.out.println(stk.isEmpty());
//false 출력

stk.clear();
//싹 다 지워버려!

System.out.println(stk.isEmpty());
//true 출력

 

'자료구조' 카테고리의 다른 글

HashMap자바- 자료구조 드가자~~~~  (0) 2025.01.15