【发布时间】:2016-10-15 15:42:38
【问题描述】:
在开发 Android 应用程序时,我遇到了以下情况:非空 Java ArrayList 中没有零索引的元素。问题的原因与以下事实有关,即当列表非空时,我有时会使用 list.remove(0) 方法删除零索引项。尽管如此,remove 方法的规范说它“将任何后续元素向左移动(从它们的索引中减去一个)”。因此,当我得到一个没有零元素的非空列表(第一个元素的索引为 1)时,我无法理解情况的原因(有时会发生)。通过在 list.get(0) 上获取 NullPointerException 和在 Android Studio 调试器中查看 ArrayList 内容,我可以看到没有零元素。
Debugging screenshot - ArrayList's shapshot with no zero item in Android Studio
【问题讨论】:
-
你能把代码贴出来告诉我们哪一行出错了吗?
-
不是重复的。我调用 list.get(0) 来获取零索引元素