Wednesday, June 10, 2026
HomeLanguagesJavaOptionalDouble orElseThrow(Supplier) method in Java with examples

OptionalDouble orElseThrow(Supplier) method in Java with examples

The orElseThrow(Supplier) method of OptionalDouble class used to get the value contained by OptionalDouble. 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> double 
    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:




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


Output:

Program 2:




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


Output:

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

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

2 COMMENTS

Most Popular

Dominic
32515 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6896 POSTS0 COMMENTS
Nicole Veronica
12012 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7019 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6963 POSTS0 COMMENTS