Stack in Java
Advertisements
Stack in Collection Framework
Stack is one of the sub-class of Vector class so that all the methods of Vector are inherited into Stack.
The concept of Stack of Data Structure is implemented in java and develop a pre-defined class called Stack.
Stack Important Points
- Stack class allow to store Heterogeneous elements.
- Stack work on Last in First out (LIFO) manner.
- Stack allow to store duplicate values.
- Stack class is Synchronized.
- Initial 10 memory location is create whenever object of stack is created and it is re-sizable.
- Stack also organizes the data in the form of cells like Vector.
- Stack is one of the sub-class of Vector.
Creating a Stack is nothing but creating an object of Stsck Class.
Syntax
Stack s=new Stack();
Constructors of Stack
- Stack(): is used for creating an object of Stack.
Syntax
Stack s=new Stack();
Methods of Stack
- public boolean empty(): is used for returns true provided Stack is empty.It returns false in case of Stack is non-empty.
- public void push (Object): is used for inserting the elements into the Stack.
- public Object pop(): is used for removing Top Most elements from the Stack.
- public Object peek(): is used for retrieving Top Most element from the Stack.
- public int search(Object): is used for searching an element in the Stack.If the element is found then it returns Stack relative position of that element otherwise it returns -1, -1 indicates search is unsuccessful and element is not found.
Example of Stack add Elements to Stack
import java.util.*; class StackDemo { public static void main(String args[]) { Stack s=new Stack(); //add the data to s s.push(10); s.push(20); s.push(30); s.push(40); System.out.println("Stack data: "+s);// [10,20,30,40] } }
Output
Stack data: [10,20,30,40]
Example of Stack to add and remove Elements from Stack
import java.util.*; class StackDemo { public static void main(String args[]) { Stack s=new Stack(); // Add the data to s s.push(10); s.push(20); s.push(30); s.push(40); System.out.println("Stack elements: "+s); //[10,20,30,40] // Remove the top most element System.out.println("Delete element: "+s.pop()); //40 System.out.println("Stack elements after pop: "+s);// [10,20,30] } }
Output
Stack elements: [10,20,30,40] Delete element: 40 Stack elements after pop: [10,20,30]
Complete Example of Stack
import java.util.*; class StackDemo { public static void main(String args[]) { Stack s=new Stack(); System.out.println("content of s="+s); //[] System.out.println("size of s="+s.size()); //10 System.out.println("Is empty?="s.empty()); //true //add the data to s s.push(10); s.push(20); s.push(30); s.push(40); System.out.println("content of s="+s); //[10,20,30,40] System.out.println("size of s="+s.size()); //4 System.out.println("Is s empty ?=s.empty()"); //false //remove the top most element System.out.println("delete element="+s.pop()); //40 System.out.println("content of s after pop="+s);// [10,20,30] //extract the top most element System.out.println("top most element="+s.peek()); //30 System.out.println("content of s after peek="+s); //[10 20 30] //Search the element 10 and 100 int srp=s.search(10); System.out.println("stack relative pos.of 10 is="+srp); //3 int srp1=s.search(100); System.out.println("stack relative pos.of 100 is="+srp1); //-1 } }
Google Advertisment