我要转换成什么类型还不知道,通过反射得到可能是String或者int,但是得到的这个"String","int"是字符串形式的,怎么用"int"这个字符串把Object转换成int,我原本写的是用if判断是哪一类型,后面觉得太麻烦,想找一个简单点的办法
解决方案 »
- 离开页面前提醒数据会丢失的问题,关于onbeforeunload
- struts 的ActionMessages(property, message)取值的问题
- Hibernate 问题 , expected in SELECT
- 用javascript改变过的selectMenuOne组件提交时总是出现错误
- 求ECLIPSE,JBOSS.LOMBOZ,TOMCAT相关资料的学习网站
- 请教各位大虾:如何把中文转换成如下格式: 国家 转换成 %B9%FA%BC%D2 感谢!!
- 初学Struts的问题
- 类静态成员在同一container的ejb和servlet中是一份还是两份?高手请进
- 能谈谈Jboss适合什么场合的开发么?(对比weblogic,websphere)
- 在JBuilder7中应用Weblogic6.x编译JSP的错误,请大虾指点?
- 求救:ORA-06502: PL/SQL: numeric or value error: hex to raw con
- 请教:javax.naming.TimeLimitExceededException:LDAP: error code 3
try{
return Integer.parseInt(obj.toString());
}catch(Exception e){
return obj.toString();
}
OK
public static void main(String[] args) throws Exception {
// System.out.println(convert("String","abc"));
System.out.println(convert("int","123"));
System.out.println(convert("double","123.22"));
}
static Object convert(String type,String value) throws EvalError{
Interpreter i = new Interpreter();
i.eval("Object result = ("+type+")"+value);
return i.get("result");
}换个思路可以么?各种基本类型都有个包装类,里面都有valueOf方法.可你传入的字符串是int不是Integer.所以vvalueOf方法行不通,如果你可以传入Integer,Double等就可以了.
如果是强置转型.(String)"传入的值",(char)'传入的值',(int)传入的值.又分出三种写法.
以上代码的思路可以的话,需要下载beanshell包.直接搜索去官网可以下载到
那么如果 目标是一个具体的自定义的类呢... 例如: MyClass..
在struts中填充 form-bean 的时候就会遇到这样的问题. 获得request中的参数名和值。
但是这个两个都是String类型.反射的到对应bean中的setter方法 中的形参类型.
但是 Method.invoke 调用的时候却要传递参数的实例对象..
你知 参数名Class<?> 但却不知怎么把从request中获得的字符串值 转换成这种相应的Class<?>实例
...
struts工具类 org.apache.commons.beanutils.BeanUtils setProperty(...) 倒是可以完成.
要想怎么具体实现.. 你倒是可以看看它的源码..
反正现在看不懂...我也是菜鸟啊.
...但是 如果照你最开始的那样if 判断.最终转换的只有你预定义的某些类
至于其他的解决办法 .... 我还不知道
已知一个Class<?> 例如: java.util.Date;
怎么把字符串 "2011-01-24" 转换成 java.util.Date楼主大概就这意思吧
你说的这是动态语言的特性,像 Java 这种静态语言要做到这些是很难的。比如这个 Object 是个 Integer 那还能转,若是个 Student 对象怎么转呢?