You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium Java中提取JSON数组内key3值报错,求正确提取方法

正确提取嵌套JSON中的key3值(Java场景)

你的报错原因是直接在顶层JSON对象中查找key3,但key3实际嵌套在data对象下的getData数组元素里,所以无法直接找到。

另外注意:你提供的原始JSON字符串存在语法错误(每个对象内的键值对之间缺少逗号),示例代码中已修正该问题,否则JSON解析会直接失败。

以下是修正后的完整代码,能正确获取两个key3的值:

import org.json.JSONArray;
import org.json.JSONObject;

public class JsonParseExample {
    public static void main(String[] args) {
        String response = 
        "{\"data\":{\"getData\":[{\"key1\":\"value1\",\"key2\":\"value2\",\"key3\":\"value3\"},{\"key1\":\"value11\",\"key2\":\"value21\",\"key3\":\"value31\"}]}}";

        // 1. 解析顶层JSON对象
        JSONObject jsonObject = new JSONObject(response);
        
        // 2. 获取data子对象
        JSONObject dataObj = jsonObject.getJSONObject("data");
        
        // 3. 获取getData数组(存储多个对象的集合)
        JSONArray getDataArray = dataObj.getJSONArray("getData");
        
        // 4. 遍历数组,逐个提取每个元素的key3值
        for (int i = 0; i < getDataArray.length(); i++) {
            JSONObject itemObj = getDataArray.getJSONObject(i);
            String key3Value = itemObj.getString("key3");
            System.out.println("key3的值:" + key3Value);
        }
    }
}

执行结果:

key3的值:value3
key3的值:value31

内容的提问来源于stack exchange,提问作者Prasanna Lakshmi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 15:45:56