您的位置:首页 > 编程语言 > Java开发

Java反射获得枚举、日期、数字类型对象

2016-05-20 00:00 477 查看
[code=language-java]public static Object getObject(String type,String value) throws Exception {
if(type.equals("Date")){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
java.sql.Date obj = new java.sql.Date(sdf.parse(value).getTime());
return obj;
}else if(type.equals("Datetime")){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
java.util.Date obj = sdf.parse(value);
return obj;
}else if(type.equals("Integer")||type.equals("Long")
||type.equals("Double")||type.equals("Float")){
Class<?> clazz = Class.forName("java.lang."+type);
Method valueOfMtd = clazz.getMethod("valueOf", new Class[]{String.class});
Object obj = valueOfMtd.invoke(clazz, new Object[]{value});
return obj;
}else{
Class<?> clazz = Class.forName(type);
Method valueOfMtd = clazz.getMethod("valueOf", new Class[]{String.class});
Object obj = valueOfMtd.invoke(clazz, new Object[]{value});
return obj;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: