GeoCoder会暂停java.lang.IndexOutOfBoundsException:索引3无效,大小为3

时间:2015-07-10 07:59:23

标签: java android google-maps

大家好我正在使用地理编码器来获取经度和经度,但我的代码工作得很好,否则通过异常就可以了



private IEnumerable<examAverage> GetGrades()
{

var values = (from grades in db.Grades
          group grades by grades.ExamID into avgGrade
          select new 
              {
                  ExamID = avgGrade.Key,
                  Grade= (int)avgGrade.Average(x => x.Grade)
              });
foreach (var value in values) yield return new examAverage{
       ExamID = value.ExamId,
       Grade = value.Grade
    };

}
&#13;
&#13;
&#13; 现在我无法理解的问题。我正在使用的代码是

&#13;
&#13;
java.lang.IndexOutOfBoundsException: Invalid index 3, size is 3
            at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
            at java.util.ArrayList.get(ArrayList.java:304)
            at com.example.mine4.latitudelongitudeconverter.LatLangToLoCaTion$1.onClick(LatLangToLoCaTion.java:70)
            at android.view.View.performClick(View.java:4222)
            at android.view.View$PerformClick.run(View.java:17620)
            at android.os.Handler.handleCallback(Handler.java:800)
            at android.os.Handler.dispatchMessage(Handler.java:100)
            at android.os.Looper.loop(Looper.java:194)
            at android.app.ActivityThread.main(ActivityThread.java:5391)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
            at dalvik.system.NativeStart.main(Native Method)
&#13;
&#13;
&#13;

现在请帮我找出真正的问题。这里有一件事我想通过用户的EditText来获取经度和经度 在此先感谢

2 个答案:

答案 0 :(得分:0)

这意味着当index 3size时,您传递无效3,基本上从0开始索引,因此您可以将0,1,2索引传递给数组中的值或者当它的大小为3时列出。现在,当您传递索引3表示IndexOutOfBoundsException时,您无法传递超过其大小的索引。要获得3个索引值ArrayList大小应该是4或更多。

答案 1 :(得分:0)

由于某种原因,你的j变为3,大小为3,因此在for循环中它会中断