什么是更简单/更干净的方式来做到这一点?斯卡拉的成语在做平等测试时的成语
val o = Some(4)
if(o.isDefined) {o.get == 4} else { false }
我已经试过
o.getOrElse(null) == 4
但感觉错了,因为在的isEmpty情况下,你最终对对方测试空...这可能本身是空的。我需要它是如果选择定义& & opt.get ==什么。我觉得像期权应该只是采取了一些功能的方法,我可以做到这一点,像这样:
o.test((x) => x == 4)
,它将应用功能只有o.isDefined。
完全重复:http://stackoverflow.com/questions/1611872/a-better-way-to-test-the-value-of-an-option - 这实际上,这是第一个列出的“相关”问题。 – 2009-11-24 23:06:10
我搜索时没有出现。感谢您链接它们。 – Trenton 2009-11-24 23:53:14