У меня есть часть кода, где мне нужно передать класс поля в методе. Из-за механики моего кода я могу обрабатывать только ссылочные объекты, а не примитивы. Я хочу простой способ определить, является ли тип Field
примитивным и заменяет его соответствующим классом-оболочкой. Таким образом, код, который я делаю до сих пор, выглядит примерно так:
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);
Это прекрасно работает, за исключением того, что мне нужно явно проверить все примитивные типы и заменить их соответствующим классом-оболочкой. Теперь я знаю, что не так много примитивных типов, и не будет проблемой просто перечислить их все, но мне было интересно, есть ли более простой и элегантный способ сделать это.