java-collection中的null,isEmpty

来源:互联网 发布:量子计算机人工智能股 编辑:程序博客网 时间:2024/06/05 10:26

只使用java utils包的isEmpty.

第一种情况:实例化list,但是size为空。

List<String> list =new ArrayList<>();if (list.isEmpty()) {System.out.println("1");}if (!list.isEmpty()) {System.out.println("2");}if (list != null) {System.out.println("3");}                if (list != null && list.size() > 0) {                        System.out.println("4");                }

输出:

13

第二种情况:add值到list中

List<String> list =new ArrayList<>();list.add("da");if (list.isEmpty()) {System.out.println("1");}if (!list.isEmpty()) {System.out.println("2");}if (list == null) {System.out.println("3");}                if (list != null && list.size() > 0) {                        System.out.println("4");                }
输出:

234
第三种情况:只创建list的引用,不实例化。

List<String> list = null;if (list.isEmpty()) {System.out.println("1");}if (!list.isEmpty()) {System.out.println("2");}if (list != null) {System.out.println("3");}if (list != null && list.size() > 0) {System.out.println("4");}
输出:

Exception in thread "main" java.lang.NullPointerException

改进办法:

使用org.apache.commons.collections.CollectionUtils;

CollectionUtils.isEmpty(Collecions<extend>);

可以避免

java.lang.NullPointerException异常

0 0