【发布时间】:2013-01-28 18:58:22
【问题描述】:
昨天我突然豁然开朗,明白了人们如何以及为什么使用带有 Option 的“map”方法来比较值。是的,我有点慢,抱歉:)
我修改了这些非常好的链接,并提出了我想问的问题。
http://twitter.github.com/effectivescala
http://blog.tmorris.net/posts/scalaoption-cheat-sheet
在我的 Lift webapp 中,我有一些 Option[User] 和 Option[Server] 变量。我正在尝试通过以下检查来确定此用户是否是此服务器的管理员
if(user.map(_.id) == server.map(_.adminId))
但我注意到,如果 'user' 为 None 并且 'server' 也为 None,则此检查成功,这对我不利(如果其中任何一个为 None,我希望此检查失败)。我可以添加 user.isDefined 条件,但我觉得有更正确的方法可以做到这一点。你能告诉我如何用 Scala 的方式来完成它吗?
【问题讨论】:
标签: scala