微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从字符串转换为对象时发生ClassCastException为什么?

如何解决从字符串转换为对象时发生ClassCastException为什么?

| 我只是在玩messageformat,但是当我尝试将String传递给messageformat格式方法时,它可以很好地编译,但是随后出现运行时类广播异常。这是代码
messageformat format = new messageformat(\"\");
    Object obj =  Integer.toHexString(10);
    format.format(obj);
现在,我得到的运行时异常如下。   线程\“ main \”中的异常java.lang.classCastException:无法将java.lang.String强制转换为[Ljava.lang.Object;       在java.text.messageformat.format(未知来源)       在java.text.Format.format(未知来源)       在JavaCore2.Codepoint.main(Codepoint.java:21)     

解决方法

        
MessageFormat.format()
接受of2ѭ类型的参数(an3ѭ数组),而您传入​​的是单个
Object
。 您将必须用
Integer
创建一个数组:
MessageFormat format = new MessageFormat(\"{0}\");
Object[] args = { Integer.toHexString(10) };

String result = format.format(args);
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。