带有空元素[]的Java ArrayList大小

Rui*_*ang 3 java arraylist

我有一个ArrayList,由于某种原因我必须添加空字符串元素"":

ArrayList<String> rList = new ArrayList<String>();
rList.add("");
Run Code Online (Sandbox Code Playgroud)

当我读取数组列表rList的大小时,rList.size()== 1和rList.isEmpty()== false.

我该如何检查这种数组列表?空元素导致大小等于1而不是空吗?

Mak*_*oto 8

即使你要添加一个空字符串到您的列表,你仍然添加的东西到列表中.而且,重要的是.

数据可能为空(或者甚至nullArrayList允许您插入的数据null),但是大小会增加(并且列表不会为空).

现在,如果您只想检查列表中是否只有那种元素(正如您在注释中所述),那么这可能是这样的:

if(rList.size() == 1 && "".equals(rList.get(0)) {
    // perform work
}
Run Code Online (Sandbox Code Playgroud)

如果列表中只有一个条目,并且只有它是空字符串,则上述行才会成功.字符串文字的反向并且get是为了防止a NullPointerException,因为如果你将它翻转为另一种方式可以发生,那就是null元素0.