Java中的棧
棧是一種後進先出 (LIFO) 的數據結構。如下所示,最後放入棧中的書是第一個被移除的,而第一個放入棧中的書是最後一個被移除的。
在Java中,可以通過導入java.util.Stack
包並調用Stack()
構造函數來創建一個整數棧。可以使用push()
方法將整數對象壓入棧中。以下代碼片段提供了一個示例。
以下是一個示例程序:
<code class="language-java">import java.util.Stack; public class Testing { public static void main(String[] args) { Stack<integer> numbers = new Stack<>(); // 使用Integer,而不是integer numbers.push(12); numbers.push(1); numbers.push(3); numbers.push(15); numbers.push(4); System.out.println(numbers); } }</integer></code>
以上程序的輸出如下:
<code>[12, 1, 3, 15, 4]</code>
可以使用get()
和pop()
方法訪問Java中棧的元素。 peek()
方法可以在不移除棧頂元素的情況下訪問它。我們可以使用pop()
方法訪問棧中的整數,因為它更符合棧作為LIFO數據結構的功能。
以下是一個從棧中檢索偶數的示例程序。在這個程序中:
empty()
方法在一個while
循環中測試棧是否為空。 <code class="language-java">import java.util.Stack; public class Example { public static void main(String[] args) { Stack<integer> numbers = new Stack<>(); // 使用Integer,而不是integer numbers.push(12); numbers.push(1); numbers.push(3); numbers.push(15); numbers.push(4); System.out.println("栈的内容: " + numbers); System.out.println("栈中的偶数: "); while(!numbers.empty()) { // 更简洁的写法 int number = numbers.pop(); if(number % 2 == 0){ System.out.println(number); } } } }</integer></code>
以上程序的輸出如下:
<code>栈的内容: [12, 1, 3, 15, 4] 栈中的偶数: 4 12</code>
改進之處: 將integer
更正為Integer
,因為Java中integer
不是有效的類型,應該使用Integer
包裝類。 同時對代碼註釋和語句進行了細微調整,使其更清晰易懂。
以上是從Java中的堆棧返回均勻數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!