Java 为什么Optionant类中没有mapToInt()?

Java 为什么Optionant类中没有mapToInt()?,java,java-8,Java,Java 8,IntStream类有map()、mapToObj()、mapToLong()和mapToDouble()方法,但这些方法似乎在OptionalInt类中缺失 缺少这些方法有什么好的理由吗?你可以做得相当迟钝 OptionalInt oi = OptionalInt.of(1); oi.ifPresent(i -> IntStream.of(i).map(j -> j + 1).forEach(System.out::println)); 然而,不清楚为什么OptionalInt没

IntStream
类有
map()
mapToObj()
mapToLong()
mapToDouble()
方法,但这些方法似乎在
OptionalInt
类中缺失


缺少这些方法有什么好的理由吗?

你可以做得相当迟钝

OptionalInt oi = OptionalInt.of(1);
oi.ifPresent(i -> IntStream.of(i).map(j -> j + 1).forEach(System.out::println));

然而,不清楚为什么
OptionalInt
没有与
IntStream
相同的方法,尽管我注意到
Optional
Stream

的一个子集,也许你应该问一下为什么
OptionalInt
没有
map
flatMap
Optional
的重复尽管它没有回答为什么(我想我们必须等待开发团队的一名成员才能得到答案),Java9将在Optionals上引入
stream()
方法。因此,您可以执行
可选optObj=myOptInt.stream().mapToObj(..).findFirst()作为一种解决方法。