转载: java获取json数组格式中的值

转自:https://www.cnblogs.com/kkxwze/p/11134846.html

 

第一种方法:

 String str = "{'array':[{'id':5,'name':'张三'},{'id':6,'name':'李四'}]}";
 JSONArray jsonArray = null;
 jsonArray = jsonobj.getJSONArray("array");//获取数组
 System.out.println(jsonArray.getJSONObject(0).get("name"));
String str = "[{'columnId':5,'columnName':'人文历史'},{'columnId':2,'columnName':'商业视野'}]}";
JSONArray jsonArray = null;
jsonArray = new JSONArray(str);
System.out.println(jsonArray.getJSONObject(0).get("columnName"));

二、JAVA获取json中的全部键值对

 JSONObject json1=JSONObject.fromObject("{'username' : '11111','clientid' : '','password' : '222222'}");  
Map<String, Object> map =json1;  
for (Entry<String, Object> entry : map.entrySet()) {  
     System.out.println(entry.getKey()+"="+entry.getValue());  
 }     

三提取json中某个数组的所有值

复制代码
public class JsonExtracter { public static void main(String[] args) { String s = "{"name":"a","family":["张三","李四"]}";

        JSONObject jsonObject = JSON.parseObject(s);

        //注意:family中的内容带有中括号[],所以要转化为JSONArray类型的对象
        JSONArray family = jsonObject.getJSONArray("family");

        for (int i = 0; i < family.size(); i++) { //提取出family中的所有
            String s1 = (String) family.get(i);
            System.out.println("currentFamily:" + s1);

        } }
复制代码
原文地址:https://www.cnblogs.com/yaohuimo/p/11639103.html