devxlogo

Understanding Optional

Understanding Optional

Optional makes it easier in cases where the result is not really needed. This example can be fine-tuned as needed to explore all of the methods supported.

import java.util.Optional;public class JavaOptional {   public static void main(String args[])   {      JavaOptional javaOptional = new JavaOptional();     final String defaultNum = "25";     //You can pass null when the argument is not provided. Take care of handling it in the next line :)     String firstArg = args.length  0 ? args[0] : null;      Integer firstInt = Integer.parseInt(firstArg);     String secondArg = args.length  1 ? args[1] : defaultNum;      Integer secondInt = Integer.parseInt(secondArg);           //Optional.ofNullable - The parameter passed can be null also.      Optional firstNum = Optional.ofNullable(firstInt);            //Optional.of - a value is must. This will throw NullPointerException is null is passed      Optional secondNum = Optional.of(secondInt);      System.out.println(javaOptional.sum(firstNum,secondNum));   }      public Integer sum(Optional firstNum, Optional secondNum)   {     //isPresent() returns true is the value exists and false otherwise      System.out.println("firstNum.isPresent(): " + firstNum.isPresent());      System.out.println("secondNum.isPresent(): " + secondNum.isPresent());           //orElse() is interesting. If the number is not present orElse executes      Integer firstInt = firstNum.orElse(new Integer(0));            //get() is the other method. Use this only if the value exists or use orElse       Integer secondInt = secondNum.get();        return (firstInt + secondInt);      }}
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist