public static <E, F extends E> List<F> listFilter(Iterable<? extends E> elements, Class<F> clazz) {
		return collectionFilter(new ArrayList<F>(), elements, clazz);
	}
public static <E, F extends E> List<F> listFilter(Iterable<? extends E> elements, Class<F> clazz) {
		return collectionFilter(new ArrayList<F>(), elements, clazz);
	}
public static < E , F extends E > List < F > listFilter ( Iterable < ? extends E > elements , Class < F > clazz ) { return collectionFilter ( new ArrayList < F > ( ) , elements , clazz ) ; }
Assumes targetKinds and E are sensible.
Assumes targetKinds and E are sensible .