当前位置 主页 > 服务器问题 > Linux/apache问题 >

    java JSONArray 遍历方式(2种)

    栏目:Linux/apache问题 时间:2019-12-07 16:34

    第一种(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);
    }
    

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。