Guava可选类型,当转换返回另一个Optional时

Guava可选类型,当转换返回另一个Optional时,第1张

Guava可选类型,当转换返回另一个Optional时

我想你可以做到:

public static void main(final String[] args) {  final Optional<Integer> valid = Optional.of("42")      .transform(STR_TO_INT_FUNCTION)      .or(Optional.<Integer>absent());  System.out.println(valid); // Optional.of(42)  final Optional<Integer> invalid = Optional.of("Toto")      .transform(STR_TO_INT_FUNCTION)      .or(Optional.<Integer>absent());  System.out.println(invalid); // Optional.absent()  final Optional<Integer> absent = Optional.<String>absent()      .transform(STR_TO_INT_FUNCTION)      .or(Optional.<Integer>absent());  System.out.println(absent); // Optional.absent()}private static final Function<String, Optional<Integer>> STR_TO_INT_FUNCTION =    new Function<String, Optional<Integer>>() {      @Override      public Optional<Integer> apply(final String input) {        return Optional.fromNullable(Ints.tryParse(input));      }    };

当您使用Optional-> transform->或在一行中使用时 用法并不是 那么
笨拙(分配已转换的可选整数将产生

Optional<Optional<Integer>>
)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5562135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存