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

Java中如何从JSONObject对象获取内部JSON数组元素

获取JSONObject中指定数组的实现方法

基于你当前使用的org.json.simple库实现

org.json.simple中JSON数组对应的类型是JSONArray,在你现有解析代码的基础上,直接取出firstNames字段强转即可,完整示例代码:

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;

public class ReadFirstNameArray {
    public static void main(String[] args) throws Exception {
        String firstNamesPath = "你的JSON文件实际存储路径";
        JSONParser jsonParser = new JSONParser();
        JSONObject firstObject = (JSONObject) jsonParser.parse(new FileReader(firstNamesPath));
        
        // 取出数组字段
        JSONArray rawNameArray = (JSONArray) firstObject.get("firstNames");
        
        // 如需转为普通Java字符串列表,可遍历转换
        List<String> firstNames = new ArrayList<>();
        for (Object nameItem : rawNameArray) {
            firstNames.add((String) nameItem);
        }

        // 验证输出结果
        System.out.println(firstNames);
    }
}

注意:org.json.simple所有字段取值返回都是Object类型,没有泛型校验,手动强转时如果字段类型和预期不符会直接抛出类型转换异常,目前不属于生产环境推荐的JSON处理类库。

替换为更稳定的JSON库实现(可选)

如果可以更换依赖,优先选择带泛型校验、类型自动转换的成熟JSON库,以常用的Jackson为例,不需要手动强转,代码容错性更高,示例代码:

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.File;
import java.util.List;

public class ReadFirstNameArrayWithJackson {
    public static void main(String[] args) throws Exception {
        ObjectMapper objectMapper = new ObjectMapper();
        JsonNode root = objectMapper.readTree(new File("你的JSON文件实际存储路径"));
        // 直接读取数组并转换为Java字符串列表
        List<String> firstNames = objectMapper.convertValue(
                root.get("firstNames"),
                objectMapper.getTypeFactory().constructCollectionType(List.class, String.class)
        );
        
        System.out.println(firstNames);
    }
}

两种写法运行后都可以直接拿到["Aaron", "Abigail", "Albert", "Bob"]的读取结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 22:30:54