我有一个需要编译时常量String的注解,我想用一个编译时常量int从一个我正在使用的库。所以我落得这样做是这样的:将编译时常量int转换为编译时常量String in Java
public class LibraryClass {
public static int CONSTANT_INT = 0; //Where 0 could be whatever
}
public class MyClass {
private static final String CONSTANT_STRING = "" + LibraryClass.CONSTANT_INT;
@AnnotationThatNeedsString(CONSTANT_STRING)
public void myMethod() {
//Do something
}
}
我的问题是,是否有转换原语编译时间常量字符串比使用"" + PRIMITIVE_TO_CONVERT
的更好的办法?一些将“原子”投射到String的方法?因为这样做感觉有点奇怪。
但是,不能在注释中直接使用,只能在CONSTANT_STRING初始化中使用。 –
是“私有静态最终字符串”CONSTANT_STRING = String.valueOf(LibraryClass.CONSTANT_INT);“不适用? – Anthony
是的,这将工作,并且是一个正确的答案。但我认为问题创建者要求提供类似@AnnotationThatNeedsString(someCleverCastOf(CONSTANT_INT))的东西。 –