com.alibaba.fastjson.JSONArray cannot be cast to java.lang.String
时间: 2023-09-25 07:13:25 浏览: 142
com.alibaba.fastjson.JSONArray依赖jar.rar
这个问题一般是因为fastjson将JSONArray对象直接转换成了String类型,导致类型转换异常。可以使用`toString()`方法将JSONArray对象转换成字符串,然后再进行类型转换。示例如下:
```java
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class Example {
public static void main(String[] args) {
String jsonStr = "{\"data\":{\"array\":[{\"name\":\"Alice\",\"age\":18},{\"name\":\"Bob\",\"age\":20}]}}";
JSONObject jsonObj = JSONObject.parseObject(jsonStr);
JSONArray array = jsonObj.getJSONObject("data").getJSONArray("array");
// 报错代码
// String arrayStr = (String) array;
// 正确代码
String arrayStr = array.toString();
System.out.println(arrayStr);
}
}
```
在上面的示例中,我们从JSON对象中获取了`array`数组对象,并将其转换成字符串类型的`arrayStr`。这样,就可以避免将JSONArray对象直接转换成String类型而导致的类型转换异常。
阅读全文