Stack 類別是 java.util 套件的一部分,它實作了堆疊資料結構。 java中的堆疊類別是按照LIFO(後進先出)的原則運作。 Stack 類別提供基本的壓入和彈出操作以及附加功能,例如清空、檢視和搜尋。 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類別是java.util套件的一部分,它擴充了Vector類別並實作了List介面。 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); }}
上面的程式展示如何在堆疊類別上執行不同的操作,如入堆疊、出棧、檢視、搜尋、清空等。
現在我們將了解如何迭代堆疊類別的元素。
代碼:
//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中文網其他相關文章!