code: public static int length(Object obj) {
  		if (obj == null) {
  			return 0;
  		}
  		if (obj instanceof CharSequence) {
  			return ((CharSequence) obj).length();
  		}
  		if (obj instanceof Collection) {
  			return ((Collection<?>) obj).size();
  		}
  		if (obj instanceof Map) {
  			return ((Map<?, ?>) obj).size();
  		}
  
  		int count;
  		if (obj instanceof Iterator) {
  			Iterator<?> iter = (Iterator<?>) obj;
  			count = 0;
  			while (iter.hasNext()) {
  				count++;
  				iter.next();
  			}
  			return count;
  		}
  		if (obj instanceof Enumeration) {
  			Enumeration<?> enumeration = (Enumeration<?>) obj;
  			count = 0;
  			while (enumeration.hasMoreElements()) {
  				count++;
  				enumeration.nextElement();
  			}
  			return count;
  		}
  		if (obj.getClass().isArray() == true) {
  			return Array.getLength(obj);
  		}
  		return -1;
  	}
docs: 计算对象长度，如果是字符串调用其length函数，集合类调用其size函数，数组调用其length属性，其他可遍历对象遍历计算长度<br>
  支持的类型包括：
  <ul>
  <li>CharSequence</li>
  <li>Map</li>
  <li>Iterator</li>
  <li>Enumeration</li>
  <li>Array</li>
  </ul>
  
  @param obj 被计算长度的对象
  @return 长度