docs: @SuppressWarnings({ "unchecked", "rawtypes" })
  	public static <T> Collection<T> create(Class<?> collectionType) {
  		Collection<T> list = null;
  		if (collectionType.isAssignableFrom(AbstractCollection.class)) {
  			// 抽象集合默认使用ArrayList
  			list = new ArrayList<>();
  		}
  
  		// Set
  		else if (collectionType.isAssignableFrom(HashSet.class)) {
  			list = new HashSet<>();
  		} else if (collectionType.isAssignableFrom(LinkedHashSet.class)) {
  			list = new LinkedHashSet<>();
  		} else if (collectionType.isAssignableFrom(TreeSet.class)) {
  			list = new TreeSet<>();
  		} else if (collectionType.isAssignableFrom(EnumSet.class)) {
  			list = (Collection<T>) EnumSet.noneOf((Class<Enum>) ClassUtil.getTypeArgument(collectionType));
  		}
  
  		// List
  		else if (collectionType.isAssignableFrom(ArrayList.class)) {
  			list = new ArrayList<>();
  		} else if (collectionType.isAssignableFrom(LinkedList.class)) {
  			list = new LinkedList<>();
  		}
  
  		// Others，直接实例化
  		else {
  			try {
  				list = (Collection<T>) ReflectUtil.newInstance(collectionType);
  			} catch (Exception e) {
  				throw new UtilException(e);
  			}
  		}
  		return list;
  	}