JSON提取数组元素

时间:2015-10-21 09:14:35

标签: java json

给出以下JSON

{  
   "Users":[  
      {  
         "Username":"John",
         "Password":"Doe"
      },
      {  
         "Username":"Anna",
         "Password":"Smith"
      },
      {  
         "Username":"Peter",
         "Password":"Jones"
      }
   ]
}

我正在尝试提取UserName&的数组列表Password

JSONObject jobj = new JSONObject(jsonData);
JSONArray userArray = jobj.getJSONArray("Users"); // Now I got the Array of Users

我需要做一些事情来提取所有用户和密码。这有什么功能?我正在使用org JSON库

for (int i=0;i<userArray.length();i++)
{
    // something like that
    usernameList = userArray[i].getData("Username");
    passwordList = userArray[i].getData("Password");
}

2 个答案:

答案 0 :(得分:1)

试试:

usernameList = userArray.getJSONObject(i).getString("Username");

答案 1 :(得分:1)

获取所有userNames和Password的列表,您需要迭代数组中的所有元素,然后将单个userNames和密码添加到列表中。

像这样:

    List<String> userList = new ArrayList<>();
    List<String> passwordList = new ArrayList<>();

    try {
        for (int i = 0; i < userArray.length(); i++) {
            JSONObject user = userArray.getJSONObject(i);
            userList.add(user.getString("Username"));
            passwordList.add(user.getString("Password"));
        }
    }catch(Exception e){

    }