OptionalInt orElseThrow(Supplier) method in Java with examples

The orElseThrow(Supplier) method of OptionalInt class used to get the value contained by OptionalInt. If a value is present, this method returns the value, otherwise, this method throws an exception produced by the exception supplying function. The exception Supplier function is passed as a parameter.

Syntax:

public <X extends Throwable> int 
    orElseThrow(Supplier<?X> exceptionSupplier)
        throws X extends Throwable

Parameters: This method accepts one parameter exceptionSupplier which is the supplying function that produces an exception to be thrown.



Return value: This method returns the value, if present.

Exception: This method throw following Exceptions:

  • X – if no value is present.
  • NullPointerException – if no value is present and the exception supplying function is null
  • X extends Throwable

Below programs illustrate orElseThrow(Supplier) method:
Program 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// OptionalInt.orElseThrow(Supplier) method
import java.util.OptionalInt;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // create a OptionalInt
        OptionalInt opint
            = OptionalInt.of(24);
  
        // apply orElseThrow(Supplier)
        int value
            = opint.orElseThrow(ArithmeticException::new);
  
        System.out.println("value " + value);
    }
}

chevron_right


Output:

Program 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// OptionalInt.orElseThrow(Supplier) method
import java.io.IOException;
import java.util.OptionalInt;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // create a OptionalInt
        OptionalInt opint
            = OptionalInt.empty();
  
        // apply orElseThrow(Supplier)
        int value;
  
        try {
  
            value
                = opint.orElseThrow(IOException::new);
        }
        catch (IOException e) {
  
            System.out.println("Exception " + e);
        }
    }
}

chevron_right


Output:

References: https://docs.oracle.com/javase/10/docs/api/java/util/OptionalInt.html#orElseThrow(java.util.function.Supplier)




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.