如何获取初始化ArrayList的size()?

时间:2013-07-24 03:35:50

标签: java arraylist nullpointerexception

我有一些类似的代码:

ArrayList<SomeType> toGetSizeOf = new ArrayList<SomeType>();
int size = toGetSizeOf.size();

然而,第二行给了我一个NullPointerException。有没有办法避免这种情况,基本上告诉ArrayList是否已经初始化但尚未添加任何东西呢? (我有一个if / else语句依赖于此。)

提前致谢!

2 个答案:

答案 0 :(得分:2)

我认为你的代码可能还有别的错误。

以下工作正常:

ArrayList<String> toGetSizeOf = new ArrayList<String>();
int size = toGetSizeOf.size();
System.out.println(size);

给出0。

调试代码并检查实际上是什么。我怀疑这是你的toGetSizeOf。

答案 1 :(得分:0)

如果您遇到NullPointerException的问题,那么您应首先检查它

你可以使用......

int size = 0;
if (toGetSizeOf != null) {
    size = toGetSizeOf.size();
}

...或

int size = toGetSizeOf == null ? 0 : toGetSizeOf.size();

如果列表为空(boolean),则还可以使用ArrayList#isEmpty返回true size == 0,如果不是,则使用false,具体取决于根据您的需求