데이터 구조는 프로그래밍을 크게 단순화하므로 프로그래밍 세계에 큰 도움이되었습니다. Java의 스택 클래스는 푸시, 팝 등과 같은 다양한 작업을 단순화합니다.이 기사에서는이 개념을 자세히 살펴 봅니다. 이 기사에서는 다음과 같은 사항을 살펴볼 것입니다.
시작하자.
Java의 스택 클래스는 무엇입니까?
스택은 데이터 구조 LIFO (Last In First Out)를 따릅니다. Java Stack Class는 push, pop 등과 같은 기본 작업을 수행 할 수있는 기본 Collection Hierarchy Framework에 속합니다.Java 컬렉션 프레임 워크에는 인터페이스 과 클래스 . 이제 Java의 스택 클래스가 Java 컬렉션 프레임 워크 계층 구조에서 배열되는 방식을 명확하게 살펴 보겠습니다.
위의 계층에서 파란색 상자는다른 인터페이스와 노란색 상자는 클래스를 정의합니다. Java의 스택은 다음을 추가로 구현하는 벡터 클래스를 확장합니다. 목록 인터페이스 . 스택을 생성 할 때마다 처음에는 항목이 포함되지 않습니다. 즉, 스택이 비어 있습니다.
계속해서 Java Stack Class의 다양한 메소드를 살펴 보겠습니다.
C ++ 배열 정렬 병합
Java의 스택 클래스 메서드
Java에는 크게 5 가지의 Stack Class 메소드가 있습니다.다음은 Java에서 스택 클래스를 사용할 때 사용할 수있는 메서드입니다.
행동 양식 | 기술 |
빈() | 스택이 비어 있는지 확인 |
푸시() | 항목을 스택 맨 위에 놓으십시오. |
팝 () | 스택에서 개체 제거 |
몰래 엿보다() | 스택을 제거하지 않고 스택의 객체를 봅니다. |
검색() | 인덱스를 얻기 위해 스택의 항목을 검색합니다. |
프로그래밍 예제를 통해 이러한 각 방법을 이해하겠습니다.
블록 체인 개발자는 무엇입니까
package Edureka import java.io. * import java.util. * public class StackMethods {// 스택 상단에 요소 추가 또는 푸시 static void push_method (Stack st, int n) {st.push (new Integer (n) ) System.out.println ( 'push ('+ n + ')') System.out.println ( 'Current Stack :'+ st)} // 스택 상단에 요소 표시 static void peek_method (Stack & ampampampltInteger & ampampampgt st) { Integer element = (Integer) st.peek () System.out.println ( 'Element on stack top :'+ element)} // 스택에서 요소 검색 static void search_method (Stack st, int element) {Integer pos = ( Integer) st.search (element) if (pos == -1) System.out.println ( 'Element not found') else System.out.println ( 'Element is found at position'+ pos)} // 요소 제거 스택 맨 위에서 static void pop_method (Stack st) {System.out.print ( 'pop =') Integer n = (Integer) st.pop () System.out.println (n) System.out.println ( '남은 스택 :'+ st)} public static void main (String args []) {Stack st = new Stack () Sys tem.out.println ( '빈 스택 :'+ st) push_method (st, 4) push_method (st, 8) push_method (st, 9) peek_method (st) search_method (st, 2) search_method (st, 4) pop_method ( st) pop_method (st) pop_method (st) try {pop_method (st)} catch (EmptyStackException e) {System.out.println ( 'empty stack')}}}
산출:
빈 스택 : []
푸시 (4)
현재 스택 : [4]
푸시 (8)
현재 스택 : [4, 8]
푸시 (9)
현재 스택 : [4, 8, 9]
스택 상단의 요소 : 9
요소를 찾을 수 없습니다.
위치 3에 요소가 있습니다.
팝 = 9
남은 스택 : [4, 8]
팝 = 8
남은 스택 : [4]
팝 = 4
남은 스택 : []
pop = 빈 스택
설명: 위에서 , 먼저 빈 스택을 인쇄하고 Push 메서드를 사용하여 몇 가지 요소를 추가했습니다. 스택에 요소가 있으면 Peek 메서드를 사용하여 스택 맨 위에 요소를 표시했습니다. 그 후 Search 메서드를 사용하여 검색을 수행하고 마지막으로 Pop 메서드를 사용하여 Java Stack 클래스의 요소를 제거했습니다.
Java Stack Class로 넘어 가서 Java에서 스택 클래스를 구현하는 동안 수행 할 수있는 다양한 작업을 살펴 보겠습니다.
자바 스택 작업 :
스택 크기 :
패키지 Edureka import java.util.EmptyStackException import java.util.Stack public class StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ( '1') stack.push ( '2 ') stack.push ('3 ') // Stack이 비어 있는지 확인 System.out.println ('Is the Java Stack empty? '+ stack.isEmpty ()) // Stack System.out의 크기를 찾습니다. println ( '스택 크기 :'+ stack.size ())}}
산출: Java 스택이 비어 있습니까? 그릇된
스택 크기 : 3
Java 스택의 요소 반복 :
- iterator ()를 사용하여 스택을 반복합니다.
- Java 8 forEach ()를 사용하여 스택 반복
- listIterator ()를 사용하여 위에서 아래로 스택을 반복합니다.
iterator ()를 사용하여 요소 반복을 시작하겠습니다.
package Edureka import java.util.EmptyStackException import java.util.Iterator import java.util.Stack public class StackOperations {public static void main (String [] args) {Stack stack = new Stack () stack.push ( '1') stack.push ( '2') stack.push ( '3') 반복기 iterator = stack.iterator () while (iterator.hasNext ()) {Object value = iterator.next () System.out.println (value)} }}
산출:
C ++ 정렬 기능
하나
2
삼
마찬가지로 다른 방법으로 반복을 수행 할 수 있습니다. 자세한 내용은 아래 코드를 참조하십시오.
package demo import java.util.EmptyStackException import java.util.Iterator import java.util.ListIterator import java.util.Stack public class JavaOperators {public static void main (String [] args) {Stack stack = new Stack () stack. push ( '1') stack.push ( '2') stack.push ( '3') System.out.println ( 'forEach () 메서드를 사용하여 스택 반복 :') stack.forEach (n-> {System. out.println (n)}) ListIterator ListIterator = stack.listIterator (stack.size ()) System.out.println ( '위에서 아래로 listIterator ()를 사용하여 스택 반복 :') while (ListIterator.hasPrevious () ) {문자열 str = ListIterator.previous () System.out.println (str)}}}
산출: forEach () 메서드를 사용하여 스택을 반복합니다.
하나
2
삼
listIterator ()를 사용하여 위에서 아래로 스택을 반복합니다.
삼
2
하나
설명: 위의 코드에서 forEach () 메서드를 사용하여 반복을 확인한 다음 listIterator ()를 사용하여 스택의 맨 위에서 맨 아래로 동일한 반복을 볼 수 있습니다.
이것은 '자바의 스택 클래스'블로그의 끝입니다. 여러분이 Java 컬렉션 프레임 워크를 명확하게 이해 하셨기를 바랍니다. Java Stack 클래스 예제 코드와 함께 계층 구조입니다. 내 다음 블로그 읽기의 위에 면접 과정에서 차별화하는 데 도움이 될 상위 75 개의 면접 질문과 답변을 나열했습니다.
이제 Java 컬렉션을 이해 했으므로 전 세계에 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사 인 Edureka에서 작성했습니다. Edureka의 Java J2EE 및 SOA 교육 및 인증 과정은 Java 개발자가 되고자하는 학생과 전문가를 위해 설계되었습니다. 이 과정은 Java 프로그래밍을 시작하고 Hibernate & Spring과 같은 다양한 Java 프레임 워크와 함께 핵심 및 고급 Java 개념 모두에 대해 교육하도록 설계되었습니다.
질문이 있으십니까? 이 '자바의 스택 클래스'블로그의 댓글 섹션에 언급 해 주시면 가능한 한 빨리 연락 드리겠습니다.