从 JSON 对象中获取第一个键和值

Get first key and value from JSON object

我已经 JSON 从我的 Web 服务器返回以下形式:

{"success":false,"errors":{"username":["Invalid username","Username too short"],"password":["Invalid password"]}}

我如何在 Java 中解析 JSON 以获得 第一个键 和该键的 第一个值?所以在上面的例子中,输出应该是:

username
Invalid username

我当前的代码如下所示:

String json =  new String(((TypedByteArray) retrofitError.getResponse().getBody()).getBytes());

try {
    JSONObject obj = new JSONObject(json);

    String success = obj.getString("success");
    JSONObject errors = obj.getJSONObject("errors");

    // TODO

} catch (JSONException e) {
    e.printStackTrace();
}

也许这样的事情可以帮助你,我不确定我是否理解你的问题:

for (final Iterator<String> iter = errors.keys(); iter.hasNext();) {
    final String key = iter.next();

    try {
        final Object value = errors.get(key);
        final JSONArray error = (JSONArray) value;
        System.out.println(key);
        System.out.println(error.get(0).toString());

    } catch (final JSONException e) {
        // Something went wrong!
    }
}