Stack empty() Method in Java
Last Updated :
24 May, 2023
The java.util.Stack.empty() method in Java is used to check whether a stack is empty or not. The method is of boolean type and returns true if the stack is empty else false.
Syntax:
STACK.empty()
Parameters: The method does not take any parameters.
Return Value: The method returns boolean true if the stack is empty else it returns false.
Below programs illustrate the working of java.util.Stack.empty() method:
Program 1:
Java
// Java code to demonstrate empty() method
import java.util.*;
public class Stack_Demo {
public static void main(String[] args)
{
// Creating an empty Stack
Stack<String> STACK = new Stack<String>();
// Stacking strings
STACK.push("Geeks");
STACK.push("4");
STACK.push("Geeks");
STACK.push("Welcomes");
STACK.push("You");
// Displaying the Stack
System.out.println("The stack is: " + STACK);
// Checking for the emptiness of stack
System.out.println("Is the stack empty? " +
STACK.empty());
// Popping out all the elements
STACK.pop();
STACK.pop();
STACK.pop();
STACK.pop();
STACK.pop();
// Checking for the emptiness of stack
System.out.println("Is the stack empty? " +
STACK.empty());
}
}
OutputThe stack is: [Geeks, 4, Geeks, Welcomes, You]
Is the stack empty? false
Is the stack empty? true
Program 2:
Java
// Java code to demonstrate empty() method
import java.util.*;
public class Stack_Demo {
public static void main(String[] args)
{
// Creating an empty Stack
Stack<Integer> STACK = new Stack<Integer>();
// Stacking int values
STACK.push(8);
STACK.push(5);
STACK.push(9);
STACK.push(2);
STACK.push(4);
// Displaying the Stack
System.out.println("The stack is: " + STACK);
// Checking for the emptiness of stack
System.out.println("Is the stack empty? " +
STACK.empty());
}
}
OutputThe stack is: [8, 5, 9, 2, 4]
Is the stack empty? false
Program 3: How to travel through Stack using java.util.Stack.empty() method to get sum of all elements
Java
// Java code to demonstrate Traversal in Stack using empty() method
import java.util.*;
public class Stack_Demo {
public static void main(String[] args)
{
// Creating an empty Stack
Stack<Integer> STACK = new Stack<>();
// You can also Initialize Stack as below
// both are same way
// Stack<Integer> STACK = new Stack<Integer>();
// Stack Pushing Elements
STACK.push(23);
STACK.push(3);
STACK.push(-30);
STACK.push(13);
STACK.push(45);
// Displaying the Stack
System.out.println("The stack is: " + STACK);
// Initialize Sum Variable which will store sum of
// all element
int sum = 0;
// Popping till Stack is Not Empty
while (!STACK.empty()) {
/* If stack have some elements then
Stack.empty() will written false and ! of it
will true so while will till !STACK.empty() it
become false for this to be false STACK.empty()
need to be true when STACK.empty() is true mean
we have completely travel Stack*/
sum += STACK.pop();
}
// Initialize
System.out.println("The Sum Of Elements is " + sum);
// Checking for the emptiness of stack
System.out.println("Is the stack empty? "
+ STACK.empty());
}
// This Code is Contributed By Vikas Bishnoi
}
OutputThe stack is: [23, 3, -30, 13, 45]
The Sum Of Elements is 54
Is the stack empty? true
Program 4 : Use java.util.Stack.empty() method to implement error handling in program.
For example, if you are reading data from a file into a stack, you can check if the stack is empty after reading the data to ensure that the file is not empty.
Java
// Java code to demonstrate error handling using empty() method
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.Stack;
public class FileReadExample {
public static void main(String[] args) {
Stack<String> stack = new Stack<>();
// read data from file
try {
File file = new File("data.txt");
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
stack.push(line);
}
scanner.close();
} catch (FileNotFoundException e) {
System.out.println("File not found.");
}
// check if stack is empty
if (stack.empty()) {
System.out.println("File is empty.");
} else {
System.out.println("File is not empty. Stack contents:");
while (!stack.empty()) {
System.out.println(stack.pop());
}
}
}
}
// This code is contributed by vishalkumarsahu04
Time Complexity: O(n), where n is the number of lines in the file.
Space Complexity : O(n), where n is the number of lines in the file.