Как я могу в общем сказать, является ли класс Java примитивным типом? - PullRequest
13 голосов
/ 16 октября 2008

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

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

Ответы [ 3 ]

25 голосов
/ 16 октября 2008

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

7 голосов
/ 16 октября 2008

Class.isPrimitive () скажет вам ответ.

1 голос
/ 17 апреля 2012

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

/**
* Checks first whether it is primitive and then whether it's wrapper is a primitive wrapper. Returns true
* if either is true
*
* @param c
* @return whether it's a primitive type itself or it's 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;
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...