【发布时间】:2019-07-09 11:39:05
【问题描述】:
我有以下声明。地图总是返回“关闭”。但我认为s -> "CLOSED"这句话可以改写成更好的风格。
有没有更好的方法来表示这个?
String status = myOptional.map(s -> "CLOSED").orElse("OPEN");
【问题讨论】:
-
为什么需要可选的
myOptional? -
想一想
x -> "CLOSED"- 你根本不用x。那么你需要Optional开头吗? -
我喜欢你已经拥有的东西。我想我理解你的问题,但我也认为任何修改的尝试都只是复杂化。
-
@Eugene OP 在这个用例中不需要
x,这并不意味着可选在其他地方没有用...... @ZZZ 现在你不能 简化编写并保持函数式风格,毕竟x是需要的,因为你需要明确你不想使用它:-) -
@Jean-BaptisteYunès 是的,我的意思是,这表明它可能是不需要的,应该更明确地说明这一点。谢谢你的评论
标签: java lambda java-8 optional