Open In App

Stack indexOf(Object, int) method in Java with Example

Improve
Improve
Like Article
Like
Save
Share
Report

The Java.util.Stack.indexOf(Object element, int index) method is used to the index of the first occurrence of the specified element in this Stack, searching forwards from index, or returns -1 if the element is not found. More formally, returns the lowest index i such that (i >= index && Objects.equals(o, get(i))), or -1 if there is no such index.

Syntax:

public int indexOf(Object element, 
                        int index)

Parameters: This method accepts two parameters:

  • element of the type of Stack. It specifies the element whose occurrence is needed to be checked in the Stack.
  • index of the type Integer. It specifies the index to start searching from

Return Value: This method returns the index or position of the first occurrence of the element in the Stack from the specified index. Else it returns -1 if the element is not present in the Stack. The returned value is of integer type.

Exception: This method throws IndexOutOfBoundsException if the specified index is negative.

Below programs illustrate the Java.util.Stack.indexOf() method:

Program 1:




// Java code to illustrate indexOf()
  
import java.util.*;
  
public class StackDemo {
    public static void main(String args[])
    {
  
        // Creating an empty Stack
        Stack<String> stack = new Stack<String>();
  
        // Use add() method to add elements in the Stack
        stack.add("Geeks");
        stack.add("for");
        stack.add("Geeks");
        stack.add("10");
        stack.add("Geeks");
  
        // Displaying the Stack
        System.out.println("Stack: " + stack);
  
        // The first position of an element
        // is returned
        System.out.println("The first occurrence"
                           + " of Geeks is at index:"
                           + stack.indexOf("Geeks"));
  
        // Get the second occurrence of Geeks
        // using indexOf() method
        System.out.println("The second occurrence"
                           + " of Geeks is at index: "
                           + stack.indexOf("Geeks",
                                           stack.indexOf("Geeks")));
    }
}


Output:

Stack: [Geeks, for, Geeks, 10, Geeks]
The first occurrence of Geeks is at index:0
The second occurrence of Geeks is at index: 0

Program 2: To demonstrate IndexOutOfBoundsException




// Java code to illustrate indexOf()
import java.util.*;
  
public class StackDemo {
    public static void main(String args[])
    {
  
        // Creating an empty Stack
        Stack<Integer> stack = new Stack<Integer>();
  
        // Use add() method to add elements in the Stack
        stack.add(1);
        stack.add(2);
        stack.add(3);
        stack.add(10);
        stack.add(20);
  
        // Displaying the Stack
        System.out.println("Stack: " + stack);
  
        // Get the -1 occurrence of Geeks
        // using indexOf() method
        System.out.println("The -1 occurrence"
                           + " of Geeks is at index: ");
  
        try {
            stack.indexOf("Geeks",
                          stack.indexOf("Geeks"));
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

Stack: [1, 2, 3, 10, 20]
The -1 occurrence of Geeks is at index: 
java.lang.ArrayIndexOutOfBoundsException: -1


Last Updated : 24 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads