이 문제는 매우 간단하지만 주위를 둘러 볼 수 없습니다. 여기api의 hashMaps를 통해 루핑
protected Void doInBackground(Void... params) {
UserFunctions user = new UserFunctions();
JSob = user.allprojects();
try {
JSar = JSob.getJSONArray("data");
} catch (JSONException e1) {
e1.printStackTrace();
}
for(int i=0; i<JSar.length(); i++){
try {
JSONObject newobj = JSar.getJSONObject(i);
project_title = newobj.getString("title");
project_sector = newobj.getString("sector");
all_list.put("title", project_title);
all_list.put("sector", project_sector);
} catch (JSONException e) {
e.printStackTrace();
}
}
return null;
}
I합니다 (all_list
는 해시 맵이다)에 HashMap
에 노력하고 있습니다 :
다음 API는 그래서 내 doInBackground
에서 나는 다음과 같은 코드를 실행하고
{ "data" : [ { "id" : "102",
"sector" : "projectSector1",
"title" : "projectTitle1"
},
{ "id" : "100",
"sector" : "projectSector2",
"title" : "projectTitle2"
},
{ "id" : "98",
"sector" : "projectSector3",
"title" : "projectTitle3"
}
],
"status" : "success"
}
를 처리 할 수있다 "sector"및 "title"을 키로 사용하여 해당 값을 값으로 사용합니다. 하지만 몇 가지 이유 때문에 나는 projectTitle3과 projectSector3을 두 번 액세스 할 수 밖에 없습니다. 도와주세요 !
내가 이렇게 당신이 해시 맵 – Pavlos
@Pavlos에 키의 이전 값을 덮어 있다고 생각 수도 좋은 해결책이 될까요? –
누군가가 아래에 답변했습니다. 귀하의 경우에는 대신 데이터베이스를 사용합니다! 특히 json이 아주 길면! – Pavlos