我正在读这个堆栈跟踪:
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)
我的理解:
IndexOutOfBoundsException
get
ArrayList
函数时造成的
xxx.MainController.gruppeSortieren
这是对的吗?我需要找到这个bug,而且我不熟悉堆栈跟踪。
答案 0 :(得分:2)
您的错误在这里:xxx.MainController.gruppeSortieren(MainController.java:68)
MainController.java中的第68行
问题是你创建的Arraylist只有一个对象。 要访问第一个索引,请使用:.get(0)
对于所有集合索引从0开始到长度为1
您必须尝试使用以下命令访问索引1:.get(1)
因此IndexOutOfBoundException。