我想創建一個數組是這樣的:JSONArray覆蓋本身
json = new JSONObject();
jsArray = new JSONArray();
for (int i = 1; i < j; i++) {
CheckBox checkBox = (CheckBox) findViewById(i);
if (checkBox.isChecked()) {
try {
String ean = (String) checkBox.getText();
json.put("ean", ean);
jsArray.put(json);
Log.v("jsArray", jsArray.toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我得到這個從代碼(最後一行是重要的一個):
04-06 19:07:02.238: V/jsArray(9894): [{"ean":"8029694000"}]
04-06 19:07:02.238: V/jsArray(9894): [{"ean":"8029694200"},{"ean":"8029694200"}]
04-06 19:07:02.238: V/jsArray(9894): [{"ean":"8029694300"},{"ean":"8029694300"},{"ean":"8029694300"}]
但我想這一點:
[{"ean":"8029694000"},{"ean":"8029694200"},{"ean":"8029694300"}]
爲什麼Array被「舊」ean變量覆蓋?
它總是與jsArray重複添加的json相同。 – sschrass