Open In App

Optional ifPresentOrElse() method in Java with examples

Last Updated : 12 Jul, 2025
Suggest changes
Share
1 Likes
Like
Report
The ifPresentOrElse(Consumer, Runnable) method of java.util.Optional class helps us to perform the specified Consumer action the value of this Optional object. If a value is not present in this Optional, then this method performs the given empty-based Runnable emptyAction, passed as the second parameter Syntax:
 public void ifPresentOrElse(Consumer<T> action, Runnable emptyAction) 
Parameters: This method accepts two parameters:
  • action: which is the action to be performed on this Optional, if a value is present.
  • emptyAction: which is the empty-based action to be performed, if no value is present.
Return value: This method returns nothing. Exception: This method throw NullPointerException if a value is present and the given action is null, or no value is present and the given empty-based action is null. Below programs illustrate ifPresentOrElse() method: Note: As this method was added in Java 9, the programs need JDK 9 to execute. Program 1: Java
// Java program to demonstrate // Optional.ifPresentOrElse() method import java.util.*; public class GFG {  public static void main(String[] args)  {  // create a Optional  Optional<Integer> op  = Optional.of(9455);  // print value  System.out.println("Optional: "  + op);  // apply ifPresentOrElse  op.ifPresentOrElse(  (value)  -> { System.out.println(  "Value is present, its: "  + value); },  ()  -> { System.out.println(  "Value is empty"); });  } } 
Output:
 Optional: Optional[9455] Value is present, its: 9455 
Program 2: Java
// Java program to demonstrate // Optional.ifPresentOrElse method import java.util.*; public class GFG {  public static void main(String[] args)  {  // create a Optional  Optional<Integer> op  = Optional.empty();  // print value  System.out.println("Optional: "  + op);  try {  // apply ifPresentOrElse  op.ifPresentOrElse(  (value)  -> { System.out.println(  "Value is present, its: "  + value); },  ()  -> { System.out.println(  "Value is empty"); });  }  catch (Exception e) {  System.out.println(e);  }  } } 
Output:
 Optional: Optional.empty Value is empty 
Reference: https://docs.oracle.com/javase/9/docs/api/java/util/Optional.html#ifPresentOrElse-java.util.function.Consumer-java.lang.Runnable-

Explore