我有一个需要检查其是否为空的对象列表,但我以下所有内容都返回空指针异常。
List <MyClass> mylist;
mylist.isEmpty
mylist.equal(null)
我有一个需要检查其是否为空的对象列表,但我以下所有内容都返回空指针异常。
List <MyClass> mylist;
mylist.isEmpty
mylist.equal(null)
因为你还没有初始化它List <MyClass> mylist
本身。目前它指的是null
参考。尝试在null
引用上调用任何方法将是一个NullPointerException
. null
您可以在调用它之前使用检查isEmpty()
,如下所示:
if(mylist!=null && !mylist.isEmpty()) {
// mylist is not empty
}
您还可以使用 Apache 的CollectionUtils#isNotEmpty()
如果指定的集合不为空,则进行空安全检查。
空返回假。
myList
在调用方法之前您没有初始化。
你需要先初始化它。例如
List <MyClass> mylist = new ArrayList<MyClass>();
myList.add(first);
myList.add(second);
现在你可以打电话了
mylist.isEmpty
mylist.equal(null)
你必须new
列出你的清单。
List <MyClass> mylist = new ArrayList<MyClass>();
现在检查:
boolean b = (mylist!=null) ? false : mylist.isEmpty();