超全模态模型 × Harness 升级,升级解锁 ArkClaw,最新支持 DeepSeek-V4 系列与 GLM-5.1
完全可以实现这个需求!下面我会一步步展示如何用JSON Simple处理你的JSON结构,最终得到嵌套的ArrayList<ArrayList<Object>>集合,方便后续做类型转换。
ArrayList<ArrayList<Object>>
如果用Maven管理项目,在pom.xml里加入以下依赖:
pom.xml
<dependency> <groupId>com.googlecode.json-simple</groupId> <artifactId>json-simple</artifactId> <version>1.1.1</version> </dependency>
假设你的JSON内容已经读取为字符串(也可以从本地文件读取),解析代码如下:
import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; import java.util.ArrayList; public class JsonMatrixParser { public static void main(String[] args) { // 你的目标JSON内容 String jsonStr = "{ \"matrix\" : [ [6,\"\",3,8,\"A\"], [\"\",\"B\",1,\"A\",9] ] }"; JSONParser parser = new JSONParser(); try { // 解析最外层的JSONObject JSONObject jsonObject = (JSONObject) parser.parse(jsonStr); // 获取"matrix"对应的外层JSONArray JSONArray outerJsonArray = (JSONArray) jsonObject.get("matrix"); // 初始化用来存储结果的嵌套ArrayList ArrayList<ArrayList<Object>> matrixList = new ArrayList<>(); // 遍历外层数组的每个元素 for (Object outerItem : outerJsonArray) { // 外层每个元素都是一个内层JSONArray JSONArray innerJsonArray = (JSONArray) outerItem; ArrayList<Object> innerList = new ArrayList<>(); // 遍历内层数组,把所有元素存入ArrayList<Object> for (Object innerItem : innerJsonArray) { // JSON Simple会自动识别类型:整数是Long、空字符串是String、null值保留为null innerList.add(innerItem); } matrixList.add(innerList); } // 打印验证结果 for (ArrayList<Object> row : matrixList) { for (Object item : row) { System.out.print(item + " [" + item.getClass().getSimpleName() + "] "); } System.out.println(); } // 后续类型转换示例:把第一个元素转为Integer Integer firstNumber = ((Number) matrixList.get(0).get(0)).intValue(); System.out.println("\n转换后的第一个整数:" + firstNumber); } catch (ParseException e) { e.printStackTrace(); } } }
Long
Double
String
null
Number
Integer
intValue()
运行代码后,输出会类似:
6 [Long] [String] 3 [Long] 8 [Long] A [String] [String] B [String] 1 [Long] A [String] 9 [Long]转换后的第一个整数:6
6 [Long] [String] 3 [Long] 8 [Long] A [String] [String] B [String] 1 [Long] A [String] 9 [Long]
转换后的第一个整数:6
这样你就得到了想要的嵌套Object集合,后续可以根据业务需求逐个转换元素类型啦!
内容的提问来源于stack exchange,提问作者leverglowh
超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起
模型再升级,30秒超长叙事, 模态参考扩容
模型自由,工具不限,最新支持 Deepseek-V4 系列、GLM-5.3 系列
超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列
大模型19元起,Al应用9.9元畅享,新人首购爆款尽享优惠