code: public static Class<?> getPrimitiveType(Class<?> wrapperType) {
          // does anyone know a better strategy than comparing names?
          if (Boolean.class.equals(wrapperType)) {
              return boolean.class;
          } else if (Float.class.equals(wrapperType)) {
              return float.class;
          } else if (Long.class.equals(wrapperType)) {
              return long.class;
          } else if (Integer.class.equals(wrapperType)) {
              return int.class;
          } else if (Short.class.equals(wrapperType)) {
              return short.class;
          } else if (Byte.class.equals(wrapperType)) {
              return byte.class;
          } else if (Double.class.equals(wrapperType)) {
              return double.class;
          } else if (Character.class.equals(wrapperType)) {
              return char.class;
          } else {
              // Log log = LogFactory.getLog(MethodUtils.class);
              if (log.isDebugEnabled()) {
                  log.debug("Not a known primitive wrapper class: " + wrapperType);
              }
              return null;
          }
      }
docs: Gets the class for the primitive type corresponding to the primitive wrapper class given.
  For example, an instance of <code>Boolean.class</code> returns a <code>boolean.class</code>.
  @param wrapperType the
  @return the primitive type class corresponding to the given wrapper class,
  null if no match is found