为什么不能在Java中将Integer转换为String?
我发现了一些奇怪的异常:
java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
怎么可能呢?每个对象都可以转换为String,不是吗?
代码是:
String myString = (String) myIntegerObject;
谢谢。
回答:
因为String和Integer不在同一对象层次结构中。
Object / \
/ \
String Integer
您尝试的转换仅在相同的层次结构中有效,例如
Object /
/
A
/
/
B
在这种情况下,(A) objB
或(Object) objB
或(Object) objA
将起作用。
因此,正如其他人已经提到的,要将整数转换为字符串,请使用:
String.valueOf(integer)
或Integer.toString(integer)
对于原始
Integer.toString()
为对象。
以上是 为什么不能在Java中将Integer转换为String? 的全部内容, 来源链接: utcz.com/qa/415618.html