Java 如何访问JSONArray中的每个键和值

Java 如何访问JSONArray中的每个键和值,java,json,iterator,jsonobject,Java,Json,Iterator,Jsonobject,我有一个JSONArray,如下所示。如何按顺序访问其中的每个键和值 JSONArray = [{"a":1},{"b":2,"c":3},{"d":4},{"e":5,"f":7}] 您可以尝试以下代码: JSONArray jsonArray = new JSONArray("[{\"a\":1},{\"b\":2,\"c\":3},{\"d\":4},{\"e\":5,\"f\":7}]"); for (int i = 0; i < jsonArray.length(); i++)

我有一个JSONArray,如下所示。如何按顺序访问其中的每个键和值

JSONArray = [{"a":1},{"b":2,"c":3},{"d":4},{"e":5,"f":7}]

您可以尝试以下代码:

JSONArray jsonArray = new JSONArray("[{\"a\":1},{\"b\":2,\"c\":3},{\"d\":4},{\"e\":5,\"f\":7}]");
for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject json = jsonArray.getJSONObject(i);
    Iterator<String> keys = json.keys();

    while (keys.hasNext()) {
        String key = keys.next();
        System.out.println("Key :" + key + "  Value :" + json.get(key));
    }

}
JSONArray-JSONArray=newjsonarray(“[{a\\':1},{b\':2,\'c\':3},{\'d\':4},{\'e\':5,\'f\':7}]”);
for(int i=0;i
请在下面的代码中尝试嵌套Json。
这里的主要方法{
String res=“”;//此处显示您的json
ObjectMapper o=新的ObjectMapper();
对象m=o.readValue(res,Object.class);
打印键(m);
}
公共无效打印密钥(对象)
{
if(遵从ArrayList的实例)
{
@抑制警告(“未选中”)
列表=(列表)服从;
用于(对象对象对象:列表)
{
打印键(ob);
}
}
else if(遵守映射实例)
{
Map m1=(Map)服从;
for(字符串键:m1.keySet()){
System.out.println(“KEY:+KEY”);
打印键(m1.get(key));
}
}
}

这真的是一个Java问题,还是你在问如何用javascript迭代所有这些内容?不,我想用Java而不是JS进行迭代……我知道其中的区别
try below code for nested Json .     
 main method here {
     String res = "" ;// your json here 
      ObjectMapper o = new ObjectMapper();
           Object m = o.readValue(res, Object.class);
           printKeys(m);

    }

    public void printKeys(Object obey)
          {

              if ( obey instanceof ArrayList)
              {
                  @SuppressWarnings("unchecked")
                List<Object> list = (List<Object>)obey;
                  for( Object ob : list )
                  {
                     printKeys(ob);
                  }

              }
              else if ( obey instanceof Map)
              {
                 Map<String, Object> m1 = (Map<String,Object>)obey;
                 for ( String key : m1.keySet() ){
                     System.out.println("KEY :"+ key);
                     printKeys(m1.get(key));
              }
          }

          }