当前位置 : 主页 > 编程语言 > java >

java JSONArray 遍历方式(2种)

来源:互联网 收集:自由互联 发布时间:2021-05-10
第一种(java8):遍历JSONArray 拼接字符串 public static void main(String[] args) { JSONArray jSONArray = new JSONArray(); JSONObject jb = new JSONObject(); jb.put("id", 1); jb.put("name", "s"); jSONArray.add(jb); JSONObject j1 =

第一种(java8):遍历JSONArray 拼接字符串

public static void main(String[] args) {
    
    JSONArray jSONArray = new JSONArray();
    JSONObject jb = new JSONObject();
    jb.put("id", 1);
    jb.put("name", "s");
    jSONArray.add(jb);
    JSONObject j1 = new JSONObject();
    j1.put("id", 2);
    j1.put("name", "s");
    jSONArray.add(j1);
    StringBuffer sBuffer = new StringBuffer();
    jSONArray.stream().forEach(jsonobejct->arrayIdToString((JSONObject) jsonobejct,sBuffer));
    System.out.println(sBuffer.toString());
  }

  private static StringBuffer arrayIdToString(JSONObject jsonobejct,
      StringBuffer sBuffer) {
    return sBuffer.append(jsonobejct.getInteger("id")).append(",");
  }

第二种:for循环遍历

public static void f2(JSONArray ja) {
    for(int i=0;i<ja.size();i++) {
      System.out.println(ja.getJSONObject(i).get("id"));
    }
  }

PS:遍历JsonObject

SONObject jsonObject = new JSONObject(s);

然后用Iterator迭代器遍历取值,建议用反射机制解析到封装好的对象中

JSONObject jsonObject = new JSONObject(jsonString);
    Iterator iterator = jsonObject.keys();
while(iterator.hasNext()){
      key = (String) iterator.next();
    value = jsonObject.getString(key);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

网友评论