Kli*_*nke 11 annotations scala constant-expression
我有一个返回double值的Java-Annotation:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface DoubleValue {
double value();
}
Run Code Online (Sandbox Code Playgroud)
当我尝试将注释附加到scala类中的字段时,值为negativ,如下所示:
class Test {
@DoubleValue(-0.05)
var a = _
}
Run Code Online (Sandbox Code Playgroud)
我得到一个编译器错误消息:"annotation参数需要是一个常量;找到:0.05.unary_-".我明白我需要一个数字文字而且我查看了Scala语言规范,似乎 - 符号仅用于指数但不用于尾数.有人知道如何使用注释将负值作为运行时信息吗?
谢谢,克林克
看来这是一个错误.
在修复bug之前,您可以利用常量上的算术是常量并使用的事实
@DoubleValue( 0-0.05 )
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1112 次 |
| 最近记录: |