code: public static <T> T[] filter(T[] array, Filter<T> filter) {
  		if(null == filter) {
  			return array;
  		}
  		
  		final ArrayList<T> list = new ArrayList<T>(array.length);
  		for (T t : array) {
  			if (filter.accept(t)) {
  				list.add(t);
  			}
  		}
  		final T[] result = newArray(array.getClass().getComponentType(), list.size());
  		return list.toArray(result);
  	}
docs: 过滤<br>
  过滤过程通过传入的Filter实现来过滤返回需要的元素内容，这个Filter实现可以实现以下功能：
  
  <pre>
  1、过滤出需要的对象，{@link Filter#accept(Object)}方法返回true的对象将被加入结果集合中
  </pre>
  
  @param <T> 数组元素类型
  @param array 数组
  @param filter 过滤器接口，用于定义过滤规则，null表示不过滤，返回原数组
  @return 过滤后的数组
  @since 3.2.1