Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JsonObject getAsString引发异常_Java_Json - Fatal编程技术网

Java JsonObject getAsString引发异常

Java JsonObject getAsString引发异常,java,json,Java,Json,我是java新手,我正在尝试创建一个带有name和value的json字符串 public static String serializeToken(String name,String value){ JsonObject json = new JsonObject(); json.addProperty(name, value); return json.getAsString(); } 但是对getAsString的调用抛出了一个异常,消息只是: JsonOb

我是java新手,我正在尝试创建一个带有
name
value
的json字符串

public static String serializeToken(String name,String value){

    JsonObject json = new JsonObject();
    json.addProperty(name, value);

    return json.getAsString();
}
但是对
getAsString
的调用抛出了一个异常,消息只是:

JsonObject

getAsString
方法的文档说明如下:

将此元素作为字符串值获取的方便方法

抛出:

ClassCastException-如果元素不是JsonPrimitive 并且不是有效的字符串值。IllegalStateException-如果 元素的类型为JsonArray,但包含多个 元素

因此,如果元素不是基元(在本例中不是基元),它将抛出一个
异常。如果要打印
json
String,则需要调用
toString
方法,例如:

JsonObject json = new JsonObject();
json.addProperty("test", "value");
String jsonString = json.toString(); 
System.out.println(jsonString);

你不能只使用json.toString()吗?toString用
\“
转义
。它成功了。请再说一件事。。当你说元素不是基元时。
element
是什么意思?element=调用方法的对象<在我们的例子中,代码>json
。。