Как я могу узнать, является ли класс Java примитивным типом?

Есть ли способ взять класс и определить, представляет ли он примитивный тип (есть ли решение, которое не требует конкретного перечисления всех примитивных типов)?

ПРИМЕЧАНИЕ. Я видел этот вопрос. Я прошу в основном обратное. У меня есть класс, я хочу знать, является ли это примитивным.

Ответы

Ответ 1

В объекте Class есть метод isPrimitive.

Ответ 3

Этот метод также проверяет, является ли он также оболочкой примитивного типа:

/**
* Checks first whether it is primitive and then whether it wrapper is a primitive wrapper. Returns true
* if either is true
*
* @param c
* @return whether it a primitive type itself or it a wrapper for a primitive type
*/
public static boolean isPrimitive(Class c) {
  if (c.isPrimitive()) {
    return true;
  } else if (c == Byte.class
          || c == Short.class
          || c == Integer.class
          || c == Long.class
          || c == Float.class
          || c == Double.class
          || c == Boolean.class
          || c == Character.class) {
    return true;
  } else {
    return false;
  }