String不能转换为Integer,Integer也不能转换为String

时间:2012-01-19 01:28:50

标签: java classcastexception

getHttpPort方法返回从JSON数据查询派生的Object类型。 Object的值可以是空字符串或整数值。为了安全起见,我认为我可以将其表示为这样的字符串:

String port = (String)getHttpPort(param);

但这有时会产生错误:

Integer cannot be cast to a String.

所以我尝试了这个:

String port = ((Integer)getHttpPort(param).toString();

但现在我得到了相反的错误:

String cannot be cast to an Integer.

getHttpPort方法的返回结果表示为字符串的正确方法是什么?

2 个答案:

答案 0 :(得分:4)

你试过吗

String port = getHttpPort(param).toString();

答案 1 :(得分:3)

Java中的每个类都存在

toString()。所以改变这个

String port = ((Integer)getHttpPort(param).toString();

String port = getHttpPort(param).toString();

现在,这将适用于实现toString()的场景。