这个4个集合中,有可能有的集合为null,有的集合的size为0.
set有一个retainAll的方法 ,是取2个set集合公共数据。
但是有的集合可能为null,就是还没有初始化。
哪个集合为null不确定,这种情况是不是要一个一个的做if判断,共要做24种判断?
有没有简单点的办法,求解。
------解决方案--------------------
对size为0的计算,对为null的不计算,如果两种情况都不计算的需要改判断条件
Set set = null;
if (set1 != null) {
if (set == null) {
set = set1;
}
}
if (set2 != null) {
if (set == null) {
set = set2;
} else {
set.retainAll(set2);
}
}
if (set3 != null) {
if (set == null) {
set = set3;
} else {
set.retainAll(set3);
}
}
if (set4 != null) {
if (set == null) {
set = set4;