1

我是否正确阅读此堆栈跟踪:

java.lang.IndexOutOfBoundsException: Invalid index 1, size is 1
at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
at java.util.ArrayList.get(ArrayList.java:304)
at xxx.MainController.gruppeSortieren(MainController.java:68)
at xxx.MainActivity$1.onItemSelected(MainActivity.java:48)
at android.widget.AdapterView.fireOnSelected(AdapterView.java:895)
at android.widget.AdapterView.access$200(AdapterView.java:50)
at android.widget.AdapterView$SelectionNotifier.run(AdapterView.java:863)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4867)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
at dalvik.system.NativeStart.main(Native Method)

我的理解:

  1. 我得到一个IndexOutOfBoundsException
  2. 这是在调用 a 的get函数时引起的ArrayList
  3. 此获取在方法中xxx.MainController.gruppeSortieren

这是正确的吗?我需要找到错误,而且我对堆栈跟踪不太熟悉。

4

1 回答 1

2

您的错误在这里: xxx.MainController.gruppeSortieren(MainController.java:68)

MainController.java 中的第 68 行

问题是您创建的 Arraylist 中只有一个对象。要访问第一个索引,请使用:.get(0)

对于所有集合索引从 0 到 length-1

您必须尝试使用​​以下方法访问索引 1:.get(1)

因此 IndexOutOfBoundException。

于 2013-11-01T17:47:52.303 回答