Java 为什么我解析JSON文档的方法只返回一个元素的列表?

Java 为什么我解析JSON文档的方法只返回一个元素的列表?,java,json,parsing,simplejson,Java,Json,Parsing,Simplejson,我正在开发一个Java版的棋盘游戏Roboral,目前我正在开发一个类,该类将解析JSON文档作为生成棋盘游戏的一部分。它几乎像预期的那样工作,但并不完全如此 JSON文档被格式化为一个坐标系,其中包含关于板上的内容及其位置的信息。方法generateJsonBoard()应该解析文档中的信息。它返回一个ICell[]]数组,其中数组中的每个单元格对象都包含单元格顶部的片段列表 该方法几乎可以工作,但当JSON数组中有多个元素时,它会遇到问题。它似乎只选择数组的最后一个元素,并将其添加到列表中,

我正在开发一个Java版的棋盘游戏Roboral,目前我正在开发一个类,该类将解析JSON文档作为生成棋盘游戏的一部分。它几乎像预期的那样工作,但并不完全如此

JSON文档被格式化为一个坐标系,其中包含关于板上的内容及其位置的信息。方法generateJsonBoard()应该解析文档中的信息。它返回一个ICell[]]数组,其中数组中的每个单元格对象都包含单元格顶部的片段列表

该方法几乎可以工作,但当JSON数组中有多个元素时,它会遇到问题。它似乎只选择数组的最后一个元素,并将其添加到列表中,而忽略其他元素

我的问题实际上归结为,如果有人看到为什么我的单元格对象中的列表只有一个元素,即使JSON数组包含多个元素(例如在位置[0][0])

以下是JSON文档的一部分

{
"0": {
“0”:[“北墙”、“旗杆一号”、“旗杆二号”、“旗杆三号”],
“1”:[“北墙”],
“2”:[“北墙”],
“3”:[“北墙”],
“4”:[“北墙”],
“5”:[“北墙”],
“6”:[“北墙”],
“7”:[“北墙”],
“8”:[“北墙”],
“9”:[“北墙”]
},
"1": {
“0”:[“西墙”],
"1": [],
"2": [],
"3": [],
"4": [],
...

解决了这个问题。使用简单的JSON效果很好。唯一的问题是我将单元格tempCell=new Cell();放得太深了。它应该在for循环中,而不是while迭代器中。谢谢大家的建议:)

当有这么多人在运行中手动重新创建json库时,为什么还要尝试手动重新创建json库?我确实使用simplejson库。跳过了导入行SOK,但将(ny)Java对象转换为json是一行。当将json转换为(自定义)Java对象列表时,我们讨论的是四行代码(如果不是更少)为什么有这么多代码?考虑使用杰克逊来解析JSON。另一个选项是GSON。两个都已经解决了这个问题。