我正在循环一个 JSONArray。names
并且amount
是ArrayList <String>
JSONArray data = json.getJSONArray("data");
int i = 0;
for (i = 0; i < data.length(); ++i) {
JSONObject rec = data.getJSONObject(i);
String name = rec.getString("name");
names.add(i, name);
String amount_v = rec.getString("amount");
amount.add(i, amount_v);
Log.v(logtag, i + " - " + names.size());
}
Log.v(logtag, "final - " + names.size());
对于 i 的每个值,names.size() 是 i 的两倍,即使我在循环中只添加了一个元素。数据有 5 条记录,名称和数量为两列。但在循环之后,名称包含所有 10 个值(5 个名称和 5 个数量)。但实际上,应该只将 5 个名称添加到名称列表中。
我在日志中看到的..
0 - 2
1 - 4
2 - 6
3 - 8
4 - 10
final - 10
为什么它将值添加amount_v
到名称列表中?