使用Gson访问Json中的嵌套列表

z2acfund  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(251)

你好,我目前正在尝试使用gson访问一个json文件,但是当它们嵌套到列表中时,我在阅读值时遇到了麻烦,我可以读取外部列表和值,但是不能读取嵌套在pos中的drive值。
我的json文件看起来像这样

{
    "pos":[
       {
         "x": 1.0,
         "y": 1.0,
         "theta": 1.0,
         "drive":[{
            "p": 1.0,
            "i": 0.5
         }]
       },
       {
         "x": 2.0,
         "y": 2.0,
         "theta": 2.0,
         "drive":[{
            "p": 1.0,
            "i": 0.5
         }]

       },
       {
         "x": 3.0,
         "y": 3.0,
         "theta": 3.0,
         "drive":[{
            "p": 1.0,
            "i": 0.5
         }]

       }
    ]
 }

我可以得到所有的x, y, and theta values inside pos,但是当我尝试访问drive中的嵌套值时,我得到了一个空指针异常

Exception in thread "main" java.lang.NullPointerException
        at frc.robot.files.take2.JsonManager.main(JsonManager.java:63)

这就是我循环检索值的方式,请注意,我排除了列表中值的setter和getter
第一个
我已经仔细检查了它的工作正常时,他们没有嵌套,只是有我的驱动器列表在json文件,并试图读取其值
第一个
提前感谢您的帮助!

yv5phkfx

yv5phkfx1#

我不认为直接在JsonManager中解析List<PidData>会起作用,你应该把它包含在你的PosData中,并把driveList改为pos.getDrive()
第一个

相关问题