通用方法中未经检查的数组转换

时间:2015-05-09 02:48:56

标签: java arrays list generics

考虑以下将类型化列表转换为类型化数组的简单代码:

public static <T> T[] toArray(List<T> list) {
    T[] array = (T[]) new Object[list.size()];
    int index = 0;
    for(T t: list) {
        array[index++] = t;
    }

    return array;
}

由于无法像这样实例化泛型类型原始数组:

T[] array = new T[list.size()];

将通用类型数组T []转换为对象数组Object []是必要的。但是,这会产生一个&#34;未经检查的演员&#34; IDE中的警告。这个的最佳解决方案是什么?

0 个答案:

没有答案