2013-03-29 3 views
0

을 구문 분석하는 동안 : 여러 번 오버 헤드 처리 시간을 증가의 결과로 만듭니다 getJSONObject를 호출하면 내가 궁금하네요안드로이드 성능 getJSONObject 나는 현재 JSON을 구문 분석하고 다음 코드 조각을 가지고있어

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

.

예를 들어 더 빠르거나 좋을까요?

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

이것은 새로운 개체를 소개하지만 다음 3 회의 호출은 그만한 가치가 있습니까?

사용자에게 뭔가를 알리는 대화 상자가 표시되므로 (사용자가 어떤 작업을 수행 할 수도 없음) 사용자의 대기 시간을 최소화하고 싶습니다.

답변

0

두 번째 옵션은 일반적으로 수행하는 방법입니다. 그러나 실적에 대해 거의 알 수 없습니다. list.getJSONObject (i) .getBoolean ("충분 함"); 임시 객체를 만들고 값을 가져옵니다. 이제 컴파일러는 임시 객체를 저장할 수있을 정도로 똑똑합니다. 비록 당신이 "리스트"에서 몇백 만 개의 jsonobj를 다루지 않는다면, 여기서는 성능에 영향을주지 않습니다.