首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >java:如何将变量从一种类型动态转换为另一种类型?

java:如何将变量从一种类型动态转换为另一种类型?
EN

Stack Overflow用户
提问于 2010-01-24 22:11:59
回答 10查看 219.6K关注 0票数 94

我想对Java变量进行动态强制转换,强制转换类型存储在另一个变量中。

这是常规的造型:

代码语言:javascript
复制
 String a = (String) 5;

这就是我想要的:

代码语言:javascript
复制
 String theType = 'String';
 String a = (theType) 5;

这是可能的吗?如果是的话,是如何实现的?谢谢!

更新

我正在尝试用我收到的HashMap填充一个类。

这是构造函数:

代码语言:javascript
复制
public ConnectParams(HashMap<String,Object> obj) {

    for (Map.Entry<String, Object> entry : obj.entrySet()) {
        try {
            Field f =  this.getClass().getField(entry.getKey());                
            f.set(this, entry.getValue()); /* <= CASTING PROBLEM */
        } catch (NoSuchFieldException ex) {
            log.error("did not find field '" + entry.getKey() + '"');
        } catch (IllegalAccessException ex) {
            log.error(ex.getMessage());         
        }
    }

}

这里的问题是,类的一些变量是Double类型的,如果接收到数字3,它会将其视为Integer,而我的类型是problem。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2127318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档