怎么将com.alibaba.fastjson.JSONObject转化为Map<String,String>
时间: 2023-11-18 20:07:12 浏览: 105
可以使用FastJson提供的方法将JSONObject转化为Map<String, Object>类型,然后再遍历Map将其转化为Map<String, String>类型。
示例代码如下:
```java
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
public class JsonToMap {
public static void main(String[] args) {
JSONObject json = new JSONObject();
json.put("name", "张三");
json.put("age", 18);
json.put("gender", "男");
// 将JSONObject转化为Map<String, Object>
Map<String, Object> map = json.getInnerMap();
// 遍历Map将其转化为Map<String, String>
Map<String, String> stringMap = new HashMap<String, String>();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
String value = entry.getValue().toString();
stringMap.put(key, value);
}
System.out.println(stringMap);
// 输出结果:{name=张三, age=18, gender=男}
}
}
```
注意:如果JSONObject中包含了非String类型的值,转化为Map<String, String>类型时需要进行类型转换,否则会抛出ClassCastException异常。
阅读全文