• 2010. 12. 8.

    by. 별머루

      
      

    Java 예제 - Stack Class

      
    Java 예제  - Stack Class 에 대해 설명해 보겠습니다.

    Stack 의 구조.

    "Stack(스택) 의 구조"

    위의 이미지에서 보시는거와 같이

    "Stack(스택)" 은 요스를 데이터 구조의 한쪽 단에서만 저장/접근 할수 있는 컬렉션 입니다.

    LIFO ( Last - In - First - Out ) 의 구조로 많이 알려져 있고 마치 한쪽 구멍만 뚫려 있는 통과 같은 구조의 컬렉션 입니다.

    즉. 요소를 저장하고 저장하면 차례대로 밑으로 내려가고 접근할때는 제일 나중에 저장한 요소부터 깨내올수 있는 겁니다 ^^

    Stack(스택) 클래스를 생성하게 위해선 다음과 같이 new 연산자를 이용하여 Stack 클래스의 생성자를 호출 하면 됩니다.


    Stack myStack = new Stack();


    Stack(스택) 의 접근 메서드 에서 가장 중요한 메서드는 바로 "push" 와 "pop" 메서드 입니다.


    메서드 설명
    pop() Stack(스택)의 맨 위의 객체를 제거하고 그 객체를 반환한다.
    push(item) Stack(스택) 맨 위에 객채를 추가.
    peek() Stack(스택) 맨 위에 있는 객체를 반환함. 이때 객체를 스택에서 제거하지 않는다.
    Boolean empty() 현재 스택이 비어있는지를 확인함.






    빨간색으로 표시된 메서드가 제일 중요한 것이니 기억해두록 !! 포인트 입니다 !!

    자 그럼 예제로 한번 알아보도록 하겠습니당.

    import java.util.*;

    public class stack {
     
     public static void main(String[] args)
     {
      Stack myStack = new Stack();  
      String str1 = "1 - 머루";
      String str2 = "2 - 별머루";
      String str3 = "3 - 산머루";
      String str4 = "4 - 달머루";
      
      myStack.push(str1);   myStack.push(str2);
      myStack.push(str3);
      myStack.push(str4);
      
      while(!myStack.isEmpty())  {
       String val = (String)myStack.pop();
       System.out.println("값은 " + val);
       
      }
     }
    }


    일일이 타이핑 하기 귀찮으신분은 ??


    요골 받아서 해보시면 되구요 ^^ 주석도 대충 달아놨습니다 !!


    실행화면입니당 !!



    위의 이미에서 보시는 바와 같이 결과 값이 "4 - 3 - 2 - 1" 순으로 나온걸 볼수 있습니다.

    이것이 Stack(스택) 클래스의 가장 큰 특징이라고 할 수 있어요 !! 넣는 순서대로 나오는게 아니고 마지막으로 넣은 순서대로 나온다는점!!

    이것만 기억하면 됩니다.


    원본 및 출처 - 클릭하세요 JAVA 2 JDK 5.0 (대림출판사)
     

    'Other > Java' 카테고리의 다른 글

    Java 예제 - Queue(큐) Class  (5) 2010.12.08
    Java 주석 처리  (1) 2010.11.10
    java - 기본 데이터형의 종류와 범위.  (1) 2010.11.04