Optional ক্লাসের ifPresentOrElse() মেথডের উন্নতি হলো এটি দুটি প্যারামিটার গ্রহণ করে: Consumer এবং Runnable। ifPresentOrElse() মেথড ব্যবহারের উদ্দেশ্য হলো: যদি একটি Optional মান ধারণ করে, তবে ফাংশন একশনটি সেই মানের ওপর কল করা হয়, অর্থাৎ action.accept(value), যা ifPresent() মেথডের সাথে সামঞ্জস্যপূর্ণ। পার্থক্য হলো ifPresentOrElse()-এর দ্বিতীয় প্যারামিটার emptyAction। যদি Optional খালি থাকে, তবে ifPresentOrElse() মেথড emptyAction কল করে, অর্থাৎ emptyAction.run()।
সিনট্যাক্স
public void ifPresentOrElse(Consumer<? super T> action, Runnable emptyAction)
উদাহরণ
import java.util.Optional;
public class IfPresentOrElseMethodTest {
public static void main(String args[]) {
Optional<Integer> optional = Optional.of(1);
optional.ifPresentOrElse(x -> System.out.println("Value: " + x), () -> System.out.println("Not Present"));
optional = Optional.empty();
optional.ifPresentOrElse(x -> System.out.println("Value: " + x), () -> System.out.println("Not Present"));
}
}
আউটপুট
Value: 1 Not Present