Java 中從棧返回偶數
Java中的棧
棧是一種後進先出 (LIFO) 的資料結構。如下所示,最後放入棧中的書是第一個被移除的,而第一個放入棧中的書是最後一個被移除的。
在 Java 中,可以透過匯入 **java.util.Stack** 包並呼叫 **Stack()** 建構函式來建立整數棧。可以使用 push() 方法將整數物件壓入棧中。以下程式碼片段提供了一個示例。

示例
以下是一個示例程式:
import java.util.Stack;
public class Testing {
public static void main(String[] args) {
Stack<Integer> numbers = new Stack<Integer>();
numbers.push(12);
numbers.push(1);
numbers.push(3);
numbers.push(15);
numbers.push(4);
System.out.println(numbers);
}
}
以上程式的輸出結果如下:
[12, 1, 3, 15, 4]
從棧中返回偶數
可以使用 **get()** 和 **pop()** 方法訪問 Java 中棧的元素。peek() 方法可以訪問棧頂的物件而無需將其移除。我們可以使用 pop() 方法訪問棧中的整數,因為它更符合棧的功能,即作為 LIFO 資料結構。
示例
以下是一個從棧中檢索偶數的示例程式。這裡:
- empty() 方法用於在 while 迴圈中測試棧是否為空
- 如果棧不為空,則從棧頂彈出數字並將其儲存為整數
- 模運算子用於檢查數字是否為偶數
- 如果數字為偶數,則將其輸出到螢幕
import java.util.Stack;
public class Example {
public static void main(String[] args) {
Stack<Integer> numbers = new Stack<Integer>();
numbers.push(12);
numbers.push(1);
numbers.push(3);
numbers.push(15);
numbers.push(4);
System.out.println("Contents of the Stack: " + numbers);
System.out.println("Even Numbers in the Stack: ");
while(!(numbers.empty())) {
int number = numbers.pop();
if(number%2 == 0){
System.out.println(number);
}
}
}
}
以上程式的輸出結果如下:
Contents of the Stack: [12, 1, 3, 15, 4] Even Numbers in the Stack: 4 12
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP