String转JsonObject 再转list<Map<String,Object>>:
要将字符串 "[{"a":"1"},{"a":"2"},{"a":"3"}]"要将字符串 "[{"a":"1"},{"a":"2"},{"a":"3"}]" 转换为 List>,首先需要将字符串解析为 JSONObject,然后再将其转换为 List>。以下是使用 Java 代码实现的方法:
java
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
String jsonStr = "[{\"a\":\"1\"},{\"a\":\"2\"},{\"a\":\"3\"}]";
JSONArray jsonArray = JSON.parseArray(jsonStr);
List<Map<String, Object>> list = new ArrayList<>();
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
Map<String, Object> map = new HashMap<>();
map.put("a", jsonObject.get("a"));
list.add(map);
}
System.out.println(list);
}
}
这段代码首先导入了 fastjson 库,然后定义了一个字符串变量 jsonStr,接着使用 JSON.parseArray() 方法将字符串解析为 JSONArray 对象。接下来,遍历 JSONArray 中的每个元素,将其转换为 JSONObject 对象,然后将 "a" 键对应的值添加到一个新的 Map 对象中,并将这个 Map 对象添加到 List 中。最后,输出转换后的 List。