当size>时,ArrayList删除(0) 0

时间:2015-07-16 22:50:59

标签: android arraylist

我试图使用items.remove(0)获取ArrayList项目中的第一项,这项工作正常,直到items.size()为1,         此时,下面的代码返回空字符串。我累了两种不同的方式,但不知道为什么它会在我回来的时候“”         期待它在items.size>时返回最后剩余的项目0。 继续使用Android Studio,调试器在我的第二个代码中逐步返回BOTH返回行。从来没见过这个。请帮忙解决这个问题         谢谢

        String item = "";
    if (items.size() > 0) {
        item =  items.remove(0);
    }
    return item;


    if (items.size() > 0) {
        return items.remove(0);
    } else {
        return "";
    }

2 个答案:

答案 0 :(得分:0)

为什么不直接使用.get()方法?

String item = "b" // items.size() = 1
if(items.size() > 0) {
   item = items.get(0);
} else {
    item = "";
}

答案 1 :(得分:0)

修正: 代码被调用两次,一次是由对象构造函数调用,另一次是同一个对象中的方法,所以只要第一次调用“由构造函数”返回完成,第二次调用就会执行,并且由于条件发生了变化,第二次返回得到执行。 基本上我的错误编码逻辑造成了问题。删除其中一个电话后。代码工作正常。