Java: преобразуйте примитивный класс [дубликат]

17
задан Max 13 August 2010 в 03:50
поделиться

1 ответ

Надеюсь, я правильно понял. По сути, вам нужно сопоставление типов примитивных классов с их методами-оболочками.

Статический служебный метод, реализованный в некотором служебном классе, был бы элегантным решением, потому что вы могли бы использовать преобразование следующим образом:

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
22
ответ дан 30 November 2019 в 11:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: