스택 클래스는 스택 데이터 구조를 구현하는 java.util 패키지의 일부입니다. Java의 스택 클래스는 LIFO(Last In First Out) 원칙에 따라 작동합니다. Stack 클래스는 기본적인 푸시 및 팝 작업과 비우기, 엿보기, 검색과 같은 추가 기능을 제공합니다. 스택 클래스는 다양한 작업을 수행하기 위한 다양한 방법을 제공합니다.
무료 소프트웨어 개발 과정 시작
웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등
구문:
Java에서 스택 클래스가 사용되는 기본 구문은 다음과 같습니다.
import java.util.*; // instantiate stack through default constructor Public class Myclass{ // instantiate stack class Stack stack = new Stack(); stack.push(1); // calling push method to insert an element }
Stack 클래스는 Vector 클래스를 확장하고 List 인터페이스를 구현하는 java.util 패키지의 일부입니다. Vector 클래스는 Java에서 크기 조정이 가능합니다. 즉, 새 요소를 추가하는 경우 크기가 커지고 요소를 제거한 후에는 크기가 줄어들 수 있습니다. 스택 클래스는 벡터를 확장하므로 본질적으로 크기 조정도 가능합니다. 스택 클래스를 사용하려면 생성자를 통해 스택 클래스의 인스턴스를 생성해야 합니다. 스택 클래스는 크기 조정이 가능하므로 기본 생성자는 하나만 사용할 수 있습니다.
인스턴스를 가져온 후 요구 사항에 따라 다음 메서드를 호출할 수 있습니다.
다음은 몇 가지 예입니다.
이제 위에서 언급한 메소드가 스택에서 어떻게 사용되는지에 대한 Java 코드 예제를 살펴보겠습니다.
코드:
//import stack class import java.util.Stack; public class StackDemo { public static void main(String[] args) { // Creating Instance of Stack Stack<String> numbers = new Stack<>(); // stack of type string only string type elements can be inserted // Pushing new elements to the Stack numbers.push("One"); numbers.push("Two"); numbers.push("Three"); numbers.push("Four"); int size= numbers.size(); // finding size of stack System.out.println("Stack contains => " + numbers); System.out.println("Size of Stack is => " + size); System.out.println(); // Popping Elements from the Stack String numbersAtTop = numbers.pop(); // Throws EmptyStackException if the stack is empty System.out.println("Element Removed => " + numbersAtTop); System.out.println("Current State of Stack => " + numbers); size= numbers.size(); System.out.println("Size of Stack is => " + size); System.out.println(); // Get the element at the top of the stack without removing it numbersAtTop = numbers.peek(); System.out.println("Top Most elemement of stack => " + numbersAtTop); System.out.println("Current State of Stack => " + numbers); // searching for an element in stack int index = numbers.search("Two"); System.out.println("Element found at Index " + index); // check if the stack is empty boolean isempty = numbers.empty(); System.out.println("Is Stack Empty => " + isempty); }}
위 프로그램은 스택 클래스에서 push, pop, peek, 검색, 비우기와 같은 다양한 작업을 수행하는 방법을 보여줍니다.
이제 스택 클래스의 요소를 반복하는 방법을 살펴보겠습니다.
코드:
//import stack class import java.util.Stack; //import stream to iterate over stack import java.util.stream.Stream; public class StackDemo { public static void main(String[] args) { // Creating Instance of Stack Stack<String> numbers = new Stack<>(); // stack of type string only string type elements can be inserted // Pushing new elements to the Stack numbers.push("First"); numbers.push("Second"); numbers.push("Third"); numbers.push("Fourth"); System.out.println("Stack contains => " + numbers); System.out.println(); // getting stream object to iterate over elements of stack Stream stream = numbers.stream(); System.out.println("Iterating stack using stream >> "); stream.forEach((item) -> { System.out.println(item); // print item }); } }
위 프로그램은 스택의 요소를 반복하는 방법을 보여줍니다. Stream 개체를 반환하는 스택 인스턴스에서 stream() 메서드를 호출해야 합니다. 그런 다음 스트림 클래스의 forEach 메서드를 사용하여 스택을 반복할 수 있습니다.
이 글에서는 스택 클래스에 대해 살펴보았습니다. 또한 스택 클래스를 인스턴스화하고 스택 클래스에서 사용할 수 있는 다양한 메서드를 사용하는 방법도 살펴보았습니다. 우리는 Stack 클래스를 사용하여 수행할 수 있는 다양한 작업을 관찰했습니다. 위에 표시된 Java 코드 예는 스택 클래스에 대한 완전한 명확성을 제공합니다.
위 내용은 Java의 스택 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!