以下是正確的方法來初始化一個JSONArray
public class TestJSON {
public static void main(String[] args) {
JSONArray template = new JSONArray("[ {\"name\": \"red\", \"first\": true, \"url\": \"#Red\"}," +
" {\"name\": \"green\", \"link\": true, \"url\": \"#Green\"}," +
"{\"name\": \"blue\", \"link\": true, \"url\": \"#Blue\"} ]");
System.out.println(template.toString());
}
}
以下是輸出:
[
{
"name": "red",
"first": true,
"url": "#Red"
},
{
"link": true,
"name": "green",
"url": "#Green"
},
{
"link": true,
"name": "blue",
"url": "#Blue"
}
]
EDIT1:
您可以使用下面的代碼來創建完整的JSON對象..
public static void main(String[] args) {
JSONArray template = new JSONArray(
"[ {\"name\": \"red\", \"first\": true, \"url\": \"#Red\"},"
+ " {\"name\": \"green\", \"link\": true, \"url\": \"#Green\"},"
+ "{\"name\": \"blue\", \"link\": true, \"url\": \"#Blue\"} ]");
JSONObject object = new JSONObject();
object.put("header", "Colors");
object.put("empty", false);
object.put("items", template);
System.out.println(object.toString());
}
以下是輸出:
{
"items": [
{
"name": "red",
"first": true,
"url": "#Red"
},
{
"link": true,
"name": "green",
"url": "#Green"
},
{
"link": true,
"name": "blue",
"url": "#Blue"
}
],
"empty": false,
"header": "Colors"
}
EDIT2:
下面的代碼可用於生成完整不使用包含JSON數據的字符串的JSON對象:
public static void main(String[] args) {
JSONArray template = new JSONArray();
JSONObject obj = new JSONObject();
obj.put("name", "red");
obj.put("first", true);
obj.put("url", "#Red");
template.put(obj);
JSONObject obj1 = new JSONObject();
obj1.put("name", "green");
obj1.put("link", true);
obj1.put("url", "#Green");
template.put(obj1);
JSONObject obj2 = new JSONObject();
obj2.put("name", "blue");
obj2.put("link", true);
obj2.put("url", "#Blue");
template.put(obj2);
JSONObject object = new JSONObject();
object.put("header", "Colors");
object.put("empty", false);
object.put("items", template);
System.out.println(object.toString());
}
以下是該程序的輸出:
{
"items": [
{
"name": "red",
"first": true,
"url": "#Red"
},
{
"link": true,
"name": "green",
"url": "#Green"
},
{
"link": true,
"name": "blue",
"url": "#Blue"
}
],
"empty": false,
"header": "Colors"
}
上面是一個jsonobject有一個JSONArray「items」。 – 2013-03-21 06:37:06
json數組以[和結束]開頭 – 2013-03-21 06:37:11
首先,這是一個JSONObject,正如評論已經說過的那樣。其次,你需要新的對象 - 你不能像這樣創建一個Java對象。 – 2013-03-21 06:43:51