From f894520e539c7de546bbb95e23fd62fcf32569f4 Mon Sep 17 00:00:00 2001 From: Srdan Kvrgic Date: Thu, 17 Dec 2015 13:21:38 +0100 Subject: [PATCH] Optional.ofNullable is generally more usable in conjucture with .orElse() --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index badb54a8..803d3f0f 100644 --- a/README.md +++ b/README.md @@ -344,13 +344,17 @@ Optionals are not functional interfaces, but nifty utilities to prevent `NullPoi Optional is a simple container for a value which may be null or non-null. Think of a method which may return a non-null result but sometimes return nothing. Instead of returning `null` you return an `Optional` in Java 8. ```java -Optional optional = Optional.of("bam"); +Optional optional = Optional.ofNullable("bam"); optional.isPresent(); // true optional.get(); // "bam" optional.orElse("fallback"); // "bam" optional.ifPresent((s) -> System.out.println(s.charAt(0))); // "b" + +List initials = null; // uninitilized +initials = Optional.ofNullable(initials).orElse(Arrays.asList("abc", "def")); // ["abc", "def"] + ``` ## Streams