@@ -25,18 +25,17 @@ public static <T> Optional<T> of(final T arg) {
25
25
}
26
26
27
27
public static <T > Optional <T > fromNullable (final T nullableReference ) {
28
- return nullableReference == null ? Optional .<T >absent ()
29
- : new Optional <>(nullableReference );
28
+ return nullableReference == null ? Optional .<T >empty () : new Optional <>(nullableReference );
30
29
}
31
30
32
31
@ SuppressWarnings ("unchecked" )
33
- public static <T > Optional <T > absent () {
32
+ public static <T > Optional <T > empty () {
34
33
return (Optional <T >) EMPTY ;
35
34
}
36
35
37
36
public T get () {
38
37
if (absent ) {
39
- throw new IllegalStateException ("Optional.get() cannot be called on an absent value" );
38
+ throw new IllegalStateException ("Optional.get() cannot be called on an empty value" );
40
39
}
41
40
return arg ;
42
41
}
@@ -67,7 +66,7 @@ public boolean isPresent() {
67
66
public Optional <T > filter (Predicate <? super T > predicate ) {
68
67
U .checkNotNull (predicate );
69
68
if (isPresent ()) {
70
- return predicate .test (arg ) ? this : Optional .<T >absent ();
69
+ return predicate .test (arg ) ? this : Optional .<T >empty ();
71
70
} else {
72
71
return this ;
73
72
}
@@ -78,7 +77,7 @@ public <F> Optional<F> map(Function<? super T, F> mapper) {
78
77
if (isPresent ()) {
79
78
return Optional .fromNullable (mapper .apply (arg ));
80
79
} else {
81
- return absent ();
80
+ return empty ();
82
81
}
83
82
}
84
83
@@ -90,6 +89,10 @@ public <X extends Throwable> T orThrow(Supplier<? extends X> exceptionFunction)
90
89
}
91
90
}
92
91
92
+ public java .util .Optional <T > toJavaOptional () {
93
+ return java .util .Optional .ofNullable (arg );
94
+ }
95
+
93
96
@ Override
94
97
public boolean equals (final Object o ) {
95
98
if (this == o ) {
@@ -113,6 +116,6 @@ public int hashCode() {
113
116
114
117
@ Override
115
118
public String toString () {
116
- return absent ? "Optional.absent() " : "Optional.of( " + arg + ") " ;
119
+ return absent ? "Optional.empty " : "Optional[ " + arg + "] " ;
117
120
}
118
121
}
0 commit comments