当使用Optional<T>
可空字段时,使用setter更加惯用
Optional<T>
T
然后得到如下?public class Bar {
private Optional<T> foo;
public void setFoo(T foo) {
this.foo = Optional.<T>fromNullable(foo);
}
public Optional<T> getFoo() {
return foo;
}
}
Run Code Online (Sandbox Code Playgroud)
我认为两者都没有,只是将内部值存储为T,并且在API级别只有Optional.
public class Bar {
private T foo;
public Optional<T> getFoo() {
return Optional.<T>fromNullable(foo);
}
public void setFoo(T foo) {
this.foo = foo;
}
}
Run Code Online (Sandbox Code Playgroud)