利用泛型实现通用的list和array转换

这里利用了Array.newInstance(..)方法,但还有一个问题,当List的长度为0的时候,是获得不了T的具体class的。好在长度为0的数组没有意义,所以干脆返回了null。

代码如下:

    public static <T> T[] getArray(List<T> collection) {
if (collection == null || collection.size() == 0)
return null;
@SuppressWarnings("unchecked")
T[] tArray = ((T[]) Array.newInstance(collection.get(0).getClass(), 0));
return collection.toArray(tArray);
}



原文地址:https://www.cnblogs.com/anrainie/p/2425339.html