【问题标题】:How to foreach json or object data with java如何使用 java foreach json 或对象数据
【发布时间】:2018-11-02 08:06:12
【问题描述】:

我有这样的网络服务返回:

Object result = envelope.getResponse();

返回是这样的

[{"nom":"Nexus09","poste":"4319"},{"nom":"Nexus08","poste":"4312"},{"nom":"Nexus07","poste":"4306"}]

我需要为每个{"nom":"Nexus09","poste":"4319"} 获取“nom”和“poste”的结果

谢谢

【问题讨论】:

标签: java json


【解决方案1】:

使用http://central.maven.org/maven2/org/json/json/20180813/json-20180813.jar 罐子,

public static void main(String[] args) {
    String input="[{\"nom\":\"Nexus09\",\"poste\":\"4319\"},{\"nom\":\"Nexus08\",\"poste\":\"4312\"},{\"nom\":\"Nexus07\",\"poste\":\"4306\"}]";

    JSONArray jsonArray = new JSONArray(input); 

    jsonArray.forEach(j->System.out.println(j.toString()));     

}

要解析嵌套的JSONObject,可以像下面这样完成,

public static void main(String[] args) {
    String input="[{\"nom\":\"Nexus09\",\"poste\":\"4319\"},{\"nom\":\"Nexus08\",\"poste\":\"4312\"},{\"nom\":\"Nexus07\",\"poste\":\"4306\"}]";

    JSONArray jsonArray = new JSONArray(input);         

    for(Object object:jsonArray) {
        if(object instanceof JSONObject) {
            JSONObject jsonObject = (JSONObject)object;

            Set<String> keys =jsonObject.keySet();
            for(String key:keys) {
                System.out.println(key +" :: "+jsonObject.get(key));;
            }               
        }
    }

}

【讨论】:

    【解决方案2】:

    这是循环遍历 JSON 数组并获取所有键值对的代码。 这应该可以。

    希望对你有帮助。

    代码:

    Iterator<String> keys = json.keys();
    
    while (keys.hasNext()) {
        String key = keys.next();
        System.out.println("Key :" + key + "  Value :" + json.get(key));
    }
    for(JSONObject json : result)
    {
        Iterator<String> keys = json.keys();
        while (keys.hasNext()) {
            String key = keys.next();
            System.out.println("Key :" + key + "  Value :" + json.get(key));
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-03
      • 2021-07-28
      • 1970-01-01
      相关资源
      最近更新 更多