Guava 的Optional类危险地接近于成为Maybe
Java 中的有用类型。我想做的就是扩展它一点:
class Maybe<X> extends Optional<X> {
public Maybe<Y> map(Function<X, Y> f) {
if (isPresent()) {
return Maybe.of(f.apply(get()));
}
return Maybe.absent();
}
}
有这么难吗?显然,是的。Java 不知道函数Y
中的类型是什么map
,一切都死得很惨。map
是否可以用 Java编写泛型?