bigdecimal转换为integer⼯具类:将string值转换为对应的类型
/**
* 将value转换为对应的class类型 fieldType
*
* @param fieldType class类型
* @param value 需要转换的值
* @return Object
* @throws Exception 反射获取类 Class.forName 可能会导致异常
*/
private Object transformValue(Class fieldType, String value) throws Exception {
if (ValidateUtil.isEmpty(value)) return null;
if (fieldType == String.class) {
return String.valueOf(value);
} else if (fieldType == Boolean.class || fieldType == boolean.class) {
return Boolean.valueOf(value);
} else if (fieldType == Byte.class || fieldType == byte.class) {
return Byte.valueOf(value);
} else if (fieldType == Double.class || fieldType == double.class) {
return Double.valueOf(value);
} else if (fieldType == Float.class || fieldType == float.class) {
return Float.valueOf(value);
} else if (fieldType == Integer.class || fieldType == int.class) {
return Integer.valueOf(value);
} else if (fieldType == Long.class || fieldType == long.class) {
return Long.valueOf(value);
} else if (fieldType == Short.class || fieldType == short.class) {
return Short.valueOf(value);
} else if (fieldType == Character.class || fieldType == char.class) {
return value.charAt(0);
} else if (fieldType == BigDecimal.class) {
return new BigDecimal(value);
} else if (fieldType == BigInteger.class) {
return new BigInteger(value);
} else if (fieldType == Date.class) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.parse(value);
} else if (fieldType == List.class) {
return Arrays.asList(value.split(","));
} else if (fieldType == Set.class) {
return new HashSet<>(Arrays.asList(value.split(",")));
} else if (fieldType.isEnum()) { // 枚举类型
Class<?> cl = Class.Name());
Field field = cl.getDeclaredField(value);
(cl);
} else if (fieldType == Pattern.class) {
return Patternpile(value);
} else {
return value;
}
}
注意: string 转list、set等,这⾥是⾃定义string中以逗号分隔,进⾏转换
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论