首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSONArray getValue

JSONArray getValue
EN

Stack Overflow用户
提问于 2015-10-03 16:05:10
回答 3查看 121关注 0票数 0

我有一个包含以下内容的teams.json文件

代码语言:javascript
复制
{
"league": "Champions League",
"season": "2015/16",
"start": "2015-11-01",
"end": "2016-03-31",
"teams": [ 
    { "name": "Spain" },
    { "name": "Germany"},
    { "name": "Italy" },
    { "name": "Brasil" },
    { "name": "Argentina" }
]

}

我有JSONArray,它工作得很好

代码语言:javascript
复制
    JSONObject jsonObject = (JSONObject) obj;
    JSONArray teamList = (JSONArray) jsonObject.get("teams");
    Iterator<JSONArray> iterator = teamList.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }

输出:

代码语言:javascript
复制
{"name":"Spain"}
{"name":"Germany"}
{"name":"Italy"}
{"name":"Brasil"}
{"name":"Argentina"}

但我只希望数组中的值不带{"name":...一些东西,比如

西班牙、德国、意大利、巴西、阿根廷;

EN

回答 3

Stack Overflow用户

发布于 2015-10-03 16:40:59

您可以这样做:

代码语言:javascript
复制
package foo.bar;

import org.json.JSONArray;
import org.json.JSONObject;

public class JSON {

    public static void main(String[] args) {

        String str = "{\r\n\"league\": \"Champions League\",\r\n\"season\": \"2015/16\",\r\n\"start\": \"2015-11-01\",\r\n\"end\": \"2016-03-31\",\r\n\"teams\": [ \r\n    { \"name\": \"Spain\" },\r\n    { \"name\": \"Germany\"},\r\n    { \"name\": \"Italy\" },\r\n    { \"name\": \"Brasil\" },\r\n    { \"name\": \"Argentina\" }\r\n]}";
        JSONObject jsonObject = new JSONObject(str);
        JSONArray teamList = (JSONArray) jsonObject.get("teams");
        for (Object o : teamList) {
            JSONObject team = (JSONObject) o;
            System.out.println(team.getString("name"));
        }
    }
}
票数 0
EN

Stack Overflow用户

发布于 2015-10-03 17:15:36

我希望它能帮助你..!

代码语言:javascript
复制
 JSONArray teams=new JSONObject(jsondata).getJSONArray("teams");  
  for(int i=0;i<teams.length();i++){  
    JSONObject team=teams.getJSONObject(i);  
    System.out.println("value of name=="+team.getString("name"));  


}
票数 0
EN

Stack Overflow用户

发布于 2015-10-03 18:15:58

只需创建用于获取数组的帮助器方法。

代码语言:javascript
复制
package com.example.helloworld;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.util.ArrayList;
import java.util.List;

public class MyTest {
    public static void main(String[] args) throws JSONException {
        String str = "{'league': 'Champions League','season': '2015/16','start': '2015-11-01','end': '2016-03-31','teams': [ \r\n    { 'name': 'Spain' },\r\n    { 'name': 'Germany'},\r\n    { 'name': 'Italy' },\r\n    { 'name': 'Brasil' },\r\n    { 'name': 'Argentina' }\r\n]}";

        System.out.println(getCountyList(str).toString());
    }

    public static List<String> getCountyList(String json) throws JSONException {
        List<String> list = new ArrayList<String>();

        JSONObject jsonObject = new JSONObject(json);
        JSONArray teamList = (JSONArray) jsonObject.get("teams");
        for (int i = 0, len = teamList.length(); i < len; i++) {
            JSONObject team = (JSONObject) teamList.get(i);
            list.add((String) team.get("name"));
        }
        return list;
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32920307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档