code: public static Object[] wrap(Object obj) {
  		if (null == obj) {
  			return null;
  		}
  		if (isArray(obj)) {
  			try {
  				return (Object[]) obj;
  			} catch (Exception e) {
  				final String className = obj.getClass().getComponentType().getName();
  				switch (className) {
  				case "long":
  					return wrap((long[]) obj);
  				case "int":
  					return wrap((int[]) obj);
  				case "short":
  					return wrap((short[]) obj);
  				case "char":
  					return wrap((char[]) obj);
  				case "byte":
  					return wrap((byte[]) obj);
  				case "boolean":
  					return wrap((boolean[]) obj);
  				case "float":
  					return wrap((float[]) obj);
  				case "double":
  					return wrap((double[]) obj);
  				default:
  					throw new UtilException(e);
  				}
  			}
  		}
  		throw new UtilException(StrUtil.format("[{}] is not Array!", obj.getClass()));
  	}
docs: 包装数组对象
  
  @param obj 对象，可以是对象数组或者基本类型数组
  @return 包装类型数组或对象数组
  @throws UtilException 对象为非数组