希望我理解正确。基本上,您希望从基元类类型映射到它们的包装器方法。
在某些 Utility 类中实现的静态实用程序方法将是一个优雅的解决方案,因为您将像这样使用转换:
Class<?> wrapper = convertToWrapper(int.class);
或者,声明并填充静态映射:
public final static Map<Class<?>, Class<?>> map = new HashMap<Class<?>, Class<?>>();
static {
map.put(boolean.class, Boolean.class);
map.put(byte.class, Byte.class);
map.put(short.class, Short.class);
map.put(char.class, Character.class);
map.put(int.class, Integer.class);
map.put(long.class, Long.class);
map.put(float.class, Float.class);
map.put(double.class, Double.class);
}
private Class<?> clazz = map.get(int.class); // usage