是不是因为Java 1.8返回Optional对象比抛出异常更可取?我越来越多地看到这样的代码:
public Optional<?> get(int i) {
// do somtething
Object result = ...
Optional.ofNullable(result);
}
Run Code Online (Sandbox Code Playgroud)
而不是这个:
public Object get(int i) {
if(i<0 || i>=size) {
throw new IndexOutOfBoundsException("Index: " + i + ". Size: " + size);
}
// do somtething
Object result = ...
return result;
}
Run Code Online (Sandbox Code Playgroud)
是否意味着我们需要忘记旧方法并使用新方法?什么地方Optional适合?