Home >Java >javaTutorial >Returning even numbers from a stack in java

Returning even numbers from a stack in java

Barbara Streisand
Barbara StreisandOriginal
2025-02-07 12:07:15480browse

Stack in Java

Stack is a last-in-first-out (LIFO) data structure. As shown below, the last book placed on the stack is the first one removed, and the first book placed on the stack is the last one removed.

In Java, you can create an integer stack by importing the java.util.Stack package and calling the Stack() constructor. The integer object can be pushed into the stack using the push() method. The following code snippet provides an example.

Returning even numbers from a stack in java

Example

The following is a sample program:

<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>

The output of the above program is as follows:

<code>[12, 1, 3, 15, 4]</code>

Return even number from stack

You can use the get() and pop() methods to access elements of the stack in Java. The peek() method can access it without removing the top element of the stack. We can use the pop() method to access integers in the stack because it is more in line with the function of the stack as a LIFO data structure.

Returning even numbers from a stack in java

Example

The following is an example program for retrieving even numbers from the stack. In this program:

  • Use the empty() method to test whether the stack is empty in a while loop.
  • If the stack is not empty, pop up the number from the top of the stack and store it as an integer.
  • Use the modulo operator to check if the number is even.
  • If the number is even, output it to the screen.
<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>

The output of the above program is as follows:

<code>栈的内容: [12, 1, 3, 15, 4]
栈中的偶数: 
4
12</code>

Improvements: Correct integer to Integer, because integer is not a valid type in Java, the Integer should be used. At the same time, the code comments and statements have been adjusted to make them clearer and easier to understand.

The above is the detailed content of Returning even numbers from a stack in java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn