判断任意参数是否为空的工具方法,判断参数工具方法,publicclassP
判断任意参数是否为空的工具方法,判断参数工具方法,publicclassP
publicclassPrutil{
/<p><li>判断对象是否为空</li><li>一般对象为null返回true</li><li>String对象为null或空字符串(不去空格)返回ture</li><li>集合,数组,Map为空,或没有元素,或元素值全部为空,返回ture</li></p>@paramobj@return*/publicstaticbooleanisEmpty(Objectobj){if(obj==null)returntrue;if(objinstanceofString){if(!"".equals(obj))returnfalse;}elseif(objinstanceofStringBuffer){returnisEmpty(obj.toString());}elseif(objinstanceofMap){if(!isEmpty(((Map)obj).values()))returnfalse;}elseif(objinstanceofEnumeration){Enumerationenumeration=(Enumeration)obj;while(enumeration.hasMoreElements()){if(!isEmpty(enumeration.nextElement()))returnfalse;}}elseif(objinstanceofIterable){if(objinstanceofList&&objinstanceofRandomAccess){List<Object>objList=(List)obj;for(inti=0;i<objList.size();i++){if(!isEmpty(objList.get(i)))returnfalse;}
}elseif(!isEmpty(((Iterable)obj).iterator()))returnfalse;}elseif(objinstanceofIterator){Iteratorit=(Iterator)obj;while(it.hasNext()){if(!isEmpty(it.next()))returnfalse;}}elseif(objinstanceofObject[]){Object[]objs=(Object[])obj;for(Objectelem:objs){if(!isEmpty(elem))returnfalse;}}elseif(objinstanceofint[]){for(Objectelem:(int[])obj){if(!isEmpty(elem))returnfalse;}}else{returnfalse;}returntrue;}
}
用户点评