class LangUtils {

	public static boolean hasElement(Object obj){
		if(obj==null)
			return false;
		else if(CharSequence.class.isAssignableFrom(obj.getClass())){
			return StringUtils.isNotBlank(obj.toString());
		}else if(Collection.class.isAssignableFrom(obj.getClass())){
			return hasElement((Collection)obj);
		}else if(obj.getClass().isArray()){
			if(obj.getClass().getComponentType().isPrimitive()){
				return Array.getLength(obj)!=0;
			}else {
				return hasElement((Object[])obj);
			}
		}else if(Map.class.isAssignableFrom(obj.getClass())){
			return hasElement((Map)obj);
		}
		return true;
	}

}