下面是一个案例类(Case Class),用于验证name
参数既不是null
也不为空:
case class MyClass(name: String) {
require(Option(name).map(!_.isEmpty) == Option(true), "name is null or empty")
}
正如预期的那样,将null
或空字符串传递给name
会导致IllegalArgumentException
异常。
是否有可能重写验证程序,以获取Success
或Failure
而不是抛出IllegalArgumentException
异常?
apply
覆盖了由案例类自动生成的一个。虽然我可能错了。无论如何,我已经更改了对象中函数的名称。感谢您提出这个问题。 - vptheron