gis-bi/sdk/common/src/main/java/io/dataease/utils/DeClassUtils.java

46 lines
1.1 KiB
Java
Raw Normal View History

2025-02-27 14:44:08 +08:00
package io.dataease.utils;
public class DeClassUtils {
public static boolean isPrimitiveOrWrapper(Object obj) {
if (obj == null) {
return false;
}
Class<?> objClass = obj.getClass();
for (Class<?> primitiveWrapper : primitiveWrappers) {
if (primitiveWrapper.isAssignableFrom(objClass)) {
return true;
}
}
return isPrimitive(objClass);
}
private static boolean isPrimitive(Class<?> clazz) {
if (clazz.isPrimitive()) {
return true;
}
String name = clazz.getName();
for (String primitiveTypeName : primitiveTypeNames) {
if (name.equals(primitiveTypeName)) {
return true;
}
}
return false;
}
private static final Class<?>[] primitiveWrappers = {
Boolean.class, Character.class, Byte.class, Short.class,
Integer.class, Long.class, Float.class, Double.class
};
private static final String[] primitiveTypeNames = {
"boolean", "char", "byte", "short",
"int", "long", "float", "double"
};
}