我得到一個字符串,我試圖轉換爲JSONArray。 JSONArray的長度變好(如果它的100或5000)。但我得到「java.lang.IndexOutOfBoundsException:無效索引50,大小爲50」。以下是我的代碼。java.lang.IndexOutOfBoundsException:無效索引50,大小爲50
try
{
JSONArray jsonArray = new JSONArray(returndResultForSNID);
System.out.println("jsonArray: "+jsonArray.length());
for(int i = 0; i < jsonArray.length(); i++)
{
snid = jsonArray.getJSONObject(i).getString("snid");
//number = jsonArray.getJSONObject(i).getString("phone");
phoneContactsDTOArrayList.add(new PhoneContactsDTO(contactNameArr.get(i).toString() , contactPhoneNumberArr.get(i).toString(), snid, ""));
//System.out.println("Could jsonArray parse malformed JSON: " + snid +" _> "+number);
}
}
catch (Exception e)
{
System.out.println("JSONArray error: " + e.toString());
}
索引的維數從0開始,從而尺寸50的具有收集裝置的是最後一個元素具有49索引 – hahn
的問題是,contactNameArr或contactPhoneNumberArr與您的jsonArray大小不一樣。 – RvdK