我只是在玩 MessageFormat ,但是当我尝试将字符串传递给MessageFormat 格式方法时,它可以很好地编译,但随后出现运行时类广播异常。这是代码。
MessageFormat format = new MessageFormat(""); Object obj = Integer.toHexString(10); format.format(obj);
现在,我得到的运行时异常如下。

最佳答案

MessageFormat.format()接受Object[]类型(一个Object数组)的参数,而您只传递了一个Object

您将必须根据Integer创建一个数组:

MessageFormat format = new MessageFormat("{0}");
Object[] args = { Integer.toHexString(10) };

String result = format.format(args);

关于exception - 从字符串转换为对象时发生ClassCastException。为什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6189600/

10-10 10:50