java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0错误解析

(1)看到上述报错的第一反应是,越界了。List.size()为0,但却引用了index为0的值,并且此时List不为空。

(2)那什么情况下会出现List不为null,但是List.size() == 0呢?下面给出示例:

           List list = new ArrayList();

           此时list被创建,即list不为null,但是还没有被赋值,则list.size() == 0。

           所以在使用List时应当同时判断(list != null && list.size() > 0)。

(3)此种问题的解决方案:在使用list.get(0 ...... N)进行取值前对list和list.size()进行判断。



你可能感兴趣的:(android,debug)