java/jsonsimple-使用键从jsonarray获取值
我有以下示例json输出表单java/jsonsimple JSONArray是:java/jsonsimple-使用键从jsonarray获取值,java,json,key,json-simple,Java,Json,Key,Json Simple,我有以下示例json输出表单java/jsonsimple JSONArray是: [{"dd1":{"actionType":"Dept","collegeID":""}},{"dd2":{"actionType":"Dept","collegeID":""}}] 我试图找出如何通过使用dd1而不是ndx来获取dd1键的值 基本上,我希望能够测试一个给定的键,看看它是否在数组中,带有一个值 JSONArray的文档允许foo.get1,但不允许foo.getdd1 谢谢 附言 我尝试使用i
[{"dd1":{"actionType":"Dept","collegeID":""}},{"dd2":{"actionType":"Dept","collegeID":""}}]
我试图找出如何通过使用dd1而不是ndx来获取dd1键的值
基本上,我希望能够测试一个给定的键,看看它是否在数组中,带有一个值
JSONArray的文档允许foo.get1,但不允许foo.getdd1
谢谢
附言
我尝试使用insert将上述内容插入到JSONObject中,然后执行foo.getdd1,但没有得到值
问题似乎归结为如何获取[]数组中的dict
doing something like foo.get(1).get("dd1") doesn't work...
谢谢你把json数组和json对象搞混了。使用foo.get1,您将检索包含字段dd1的JSON对象-然后您可以使用getdd1在JSON输入中有一个数组包装您的字典,因此您必须首先获取字典,类似于:
foo.get(1).get("dd1");
但您可以将JSON更改为一个简单的字典,如下所示:
{
"dd1": {"actionType":"Dept","collegeID":""},
"dd2": {"actionType":"Dept","collegeID":""}
}
然后你就能做到:
foo.get("dd1");
你好foo是一个JSONArray。如果执行foo.get1,则得到数组的第二个元素,该元素具有dd2。。所以我需要一种从数组中获取字典的方法。哦,那么您需要执行foo.get0;;-foo.get0将获得第一个字典,foo.get0.getdd1将获得内部字典。嗨,eljunior。。。。foo.get0或foo.get1都不允许我获取初始dict。如果我执行foo.get0,我将拥有第一个数组/dict元素,该元素具有dd1。然后我可以对返回的项目执行getdd1。。但这是无用的,因为我已经有了dd1项目。我试图实现的是能够直接执行.getdd1,以便确定该键是否存在,并获取相关值。。。所以,如果你知道一种转换我所拥有的东西的方法,那么你就可以做一个abc.getdd1。。我在玩游戏!thanksIt是这样的:对于输入[{one:1},{two:2}],如果您执行foo.get0,您将拥有第一个字典:{one:1}。如果你这样做:foo.get0.getone你将得到1。因此,如果您想执行foo.getdd1并获取字典,那么您的输入必须是:{dd1:{dd1:{actionType:Dept,collegeID:}}}}},但是如果您的真实字典比您发布的更复杂,那么您将复制信息而没有实质性的收益。只有字典允许按键访问元素。希望有帮助!这对我不起作用。比如我有,;JSONArray arr=[{01:key1},{02:key2},{03:key3}]arr.get01抛出错误。