无论Java中的内容类型如何如何将字段作为字符串获取?

时间:2019-03-25 14:00:13

标签: java json

我正在尝试从JsonObject检索一个字符串形式的字段。有时,“ agentid”字段的使用时间有时长于String。等到很长一段时间,我就会遇到异常

  

java.lang.ClassCastException:无法将java.lang.Double强制转换为   java.lang.CharSequence

以下是遇到此异常的语句:

// get agent ID
String agentID = parameterJson.getString("agentid");

如何安全获取此字段“ agentid”的内容并将其存储为Java中的String?

3 个答案:

答案 0 :(得分:1)

根据您正在使用的JsonObject类,我假设它具有一个返回get()的{​​{1}}或getObject()方法。您可以先调用该方法,再调用Object

例如:

.toString()

答案 1 :(得分:1)

您可以执行不同的操作:

首先,您可以执行Double.toString(...),因为Exception会告诉您错误出现的原因。

您还可以执行String.valueOf(Object),它也可以处理在其中传递的每个对象,或者当您从JSON中获得toString时只需使用Object方法。

您还可以只使用getDouble而不是getString并使用double类型。

答案 2 :(得分:0)

您可以使用它将其转换为字符串。

String agentID = String.valueOf(parameterJson.getString("agentid"));