在Java中,判断集合是否为空的方法
1.判断List集合是否为空
1.1List集合已经完成初始化
public static void main(String[] args) {
List<String> list = new ArrayList<>();
if (list.isEmpty()) {
System.out.println("List is empty.");
}
}
这里的List集合已经完成了初始化操作,相当于是一个瓶子可以装水了,但是此时还没有水。
控制台输出:List is empty.
1.2List集合未完成初始化
List<String> list = null;
if (list.isEmpty()) {
System.out.println("List is empty.");
}
这里的List集合,还没有进行初始化,相当于瓶子还不存在,用list.isEmpty()会产生NullPointerException异常。
或者是使用:list != null && !list.isEmpty() 也不会产生空指针
public static void main(String[] args) {
List<String> list = null;
if (list != null && !list.isEmpty()) {
System.out.println("List is Not empty.");
}else {
System.out.println("List is empty.");
}
}
1.3使用CollUtil
通常情况下会连用list != null && list.size > 0 来判断,或者直接使用HuTool中CollUtil工具的isEmpty。
List<String> list = null;
if (CollUtil.isNotEmpty(list )) {
System.out.println("List is Not empty.");
}else {
System.out.println("List is empty.");
}
控制台输出 List is empty.
public static void main(String[] args) {
List<String> list = new ArrayList<>();
if (CollUtil.isNotEmpty(list )) {
System.out.println("List is Not empty.");
}else {
System.out.println("List is empty.");
}
}
控制台输出 List is empty.
1.4使用List.size()方法。例如:
错误用法:
public static void main(String[] args) {
List<String> list = null;
if (list.size()!= 0) {
System.out.println("List is Not empty.");
}else {
System.out.println("List is empty.");
}
}
正确用法:
public static void main(String[] args) {
List<String> list = null;
if (list != null && list.size() != 0) {
System.out.println("List is Not empty.");
} else {
System.out.println("List is empty.");
}
}
控制台输出:Exception in thread "main" java.lang.NullPointerException
在使用 list.size() 方法时要确保集合已经初始化,不然会产生空指针异常
1.5CollectionUtils.isNotEmpty
使用CollectionUtils.isNotEmpty(Collection coll)方法。这需要使用Apache Commons Collections库。例如:
public static void main(String[] args) {
List<String> list = new ArrayList<>();
if (CollectionUtils.isNotEmpty(list)) {
System.out.println("List is not empty.");
}else {
System.out.println("List is not empty.");
}
}
控制台输出:List is not empty.
public static void main(String[] args) {
List<String> list = null;
if (CollectionUtils.isNotEmpty(list)) {
System.out.println("List is not empty.");
}else {
System.out.println("List is not empty.");
}
}
控制台输出:List is not empty.
2.判断Map集合是否为空
1.使用Map.isEmpty()方法
Map<String, String> map = new HashMap<>();
if (map.isEmpty()) {
System.out.println("Map is empty.");
}
使用 isEmpty() 要确保集合初始化完成 不然会产生空指针
public static void main(String[] args) {
Map<String, String> map = null;
if (map!= null && !map.isEmpty()) {
System.out.println("Map is Not empty.");
}else {
System.out.println("Map is empty.");
}
}
1.2使用CollUtil
public static void main(String[] args) {
Map<String, String> map = null;
if (CollUtil.isEmpty(map)) {
System.out.println("Map is empty.");
}else {
System.out.println("Map is Not empty.");
}
}