fastjson 中如何判断一个json字符串是数组还是对象
时间: 2024-03-20 11:43:05 浏览: 158
通过fastJSON封装JSON
在 fastjson 中,你可以使用 JSON 类的 parse() 方法将 JSON 字符串解析为一个 JSON 对象或数组。然后,你可以使用 JSON 类的 isArray() 和 isObject() 方法来判断解析后的对象是数组还是对象。
下面是示例代码:
```java
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class Test {
public static void main(String[] args) {
String jsonStr1 = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
String jsonStr2 = "[\"apple\", \"banana\", \"orange\"]";
Object obj1 = JSON.parse(jsonStr1);
Object obj2 = JSON.parse(jsonStr2);
if (obj1 instanceof JSONObject) {
System.out.println("JSON object");
} else if (obj1 instanceof JSONArray) {
System.out.println("JSON array");
}
if (obj2 instanceof JSONObject) {
System.out.println("JSON object");
} else if (obj2 instanceof JSONArray) {
System.out.println("JSON array");
}
}
}
```
运行以上代码,输出结果为:
```
JSON object
JSON array
```
这里使用了 instanceof 关键字来判断解析后的对象是 JSONObject 还是 JSONArray,然后输出相应的结果。注意,如果 JSON 字符串不是一个合法的 JSON 对象或数组,那么解析会抛出异常。
阅读全文