メソッドのフィールドのクラスを渡す必要があるコードがあります。私のコードの仕組みのため、プリミティブではなく参照オブジェクトのみを扱うことができます。 Field
の型がプリミティブであるかどうかを判断し、適切なラッパークラスと交換する簡単な方法が必要です。Javaでラッパークラスの型を取得する簡単な方法
Field f = getTheField(); // Dummy method that returns my Field
Class<?> c = f.getType();
if (c == int.class) {
c = Integer.class;
}
else if (c == float.class) {
c = Float.class;
}
// etc
myMethod(c);
これは私が明示的にすべてのプリミティブ型をチェックして、適切なラッパークラスでそれらを交換する必要があるという事実を除いて、正常に動作します:だから私は、これまでに何をすべきかのコードでこのようなものです。今では、あまりにも多くのプリミティブ型がないことを知っています。単純にそれらをすべてリストするのは問題ではありませんが、より簡単でより洗練された方法があれば疑問に思っていました。
だから基本的に同じこと... :)答えをありがとう。基本的には今のところ他の方法はありません。 –