Java创建泛型数组一种实现方式,在Java中创建泛型数组的唯一方式就是创建一个被擦除类型的新数组,然后对其进行转型。
public class GenericArrayWithTypeToken<T> { private T[] array; @SuppressWarnings("unchecked") public GenericArrayWithTypeToken(Class<T> type, int sz) { array = (T[]) Array.newInstance(type, sz); } public void put(int index, T item) { array[index] = item; } public T get(int index) { return array[index]; } public T[] rep() { return array; } public static void main(String[] args) { GenericArrayWithTypeToken<Integer> gai = new GenericArrayWithTypeToken<>( Integer.class, 10); Integer[] ia = gai.rep(); } }