1

如何从以下检索“B2”?JSON数组?

        JSONArray o = new JSONArray();
    for(int i = 0; i < 3; i++) {
        List<Object> list = new ArrayList<Object>();
        list.add("B" + i);
        list.add(100+i);
        o.put(list);
    }

我认为它类似于以下内容,尽管这根本不正确。

o.get(2)[0]
4

2 回答 2

1

问题是您正在使用put(),其中:

在 JSONArray 中放置一个值,该值将是一个从 Collection 生成的 JSONArray。

因此,这会将一个数组添加到您的数组中。像这样的东西:

[
  [
    "B1", "B2"
  ]
]

如果这是有意的,那么您首先需要获取内部数组,然后是第二个条目:

o.getJSONArray(0).getInt(1);

否则,如果您想用 中的条目填充现有的,您将需要使用-constructorJSONArray oListJSONArray(Collection)

于 2013-03-05T23:53:46.507 回答
0

您已经创建了一个二维数组。以下代码片段应该可以工作:

o.getJSONArray(2).getString(0);
于 2013-03-05T23:57:39.213 回答