【发布时间】:2010-09-11 08:52:38
【问题描述】:
我是 scala 的新手,但基本上已经找到了自己的方法......
在这里,我要求推荐/最佳实践/惯用的实现方式:
- 在内部,MyClass 使用 state 类型,该类型由案例类的密封层次结构实现
- 但在 API 上,只应公开一些布尔谓词,通过匹配(内部)状态来实现。
目前,我的实现是...
def isSane: Boolean = state match {
case Ok(_,'valid) => true
case _ => false
}
但是这个解决方案让我感觉很别扭,好像用 3 行代码表达的东西只有一行代码的信息内容。其实我想写的是:
def isSane: boolean = state matches Ok(_, 'valid)
可能/很可能在 scala 中自己实现一个合适的运算符,但在我研究之前,我想知道解决这个问题的通常方法是什么。也许还有一些现有的库实现?
【问题讨论】:
标签: scala