私は、コンパイル時定数文字列を必要とする注釈を持っていると私は、のいずれかからコンパイル時定数のintで初期化したいです私が使っているライブラリ変換は、コンパイル時定数int型の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))のようなものを要求したと思います。 –