无论名称如何,JSONObject都获取第一个节点的值

eri*_*rik 7 java android jsonobject

我想知道是否有办法在不知道其名称的情况下获取JSONObject的第一个子节点的值:

我有一些JSON进来了一个名为的节点, this_guy

{"this_guy": {"some_name_i_wont_know":"the value i care about"}}
Run Code Online (Sandbox Code Playgroud)

使用JSONObject,如果我不知道孩子的名字,怎么能干净利落地得到"我关心的价值".我所知道的只是"this_guy",有人吗?

ρяσ*_*я K 16

使用JSONObject.keys() ,其返回字符串名称的迭代此对象.然后使用这些键来检索值.

仅获得第一个值:

 Iterator<String> keys = jsonObject.keys();
 // get some_name_i_wont_know in str_Name
 String str_Name=keys.next(); 
 // get the value i care about
 String value = json.optString(str_Name);
Run Code Online (Sandbox Code Playgroud)