0

我目前正在解析 JSON 并得到以下代码:

boolean suf = list.getJSONObject(i).getBoolean("sufficient");
String grade = list.getJSONObject(i).getString("grade");
String id= list.getJSONObject(i).getString("id");

我想知道多次调用 getJSONObject 是否会产生开销,从而导致处理时间增加。

例如,这会更快和/或更好吗?

JSONObject object = list.getJSONObject(i);
boolean suf = object.getBoolean("sufficient");
String grade = object).getString("grade");
String id= object.getString("id");

这确实引入了一个新对象,但接下来的 3 次调用是否值得权衡?

由于我正在显示一个对话框来通知用户正在加载某些内容(因此他们无法采取任何行动),我想尽量减少用户的等待时间。

4

1 回答 1

0

第二个选项是我通常的做法。但是您几乎不会在性能上看到任何通知。list.getJSONObject(i).getBoolean("足够"); 创建一个临时对象并获取值。现在,编译器足够聪明,可以存储临时对象以防万一。即使他们没有,除非您在“列表”中处理数百万个 jsonobj,否则我在这里看不到任何性能影响。

于 2013-03-29T11:51:45.967 回答