前一阵子打代码的时候突然想到一个问题。平时我们的数组都是作为一个参数传入方法中的,如果我们要想在方法中创建一个数组怎么样呢?在类型明确的情况下,这是没什么难度的。如果我们传入的参数是泛型类型的参数呢?
public static <T> T[] creArray (T obj){
T[] arr = new T[10];
}
像上面这种用T来直接new数组的方法是错误的,会编译时出现一个:Cannot create a generic array of T. 的错误。java中不支持未知的类型直接创建数组。
最后我得到了这样一个完美的解决方法:
package Test;
import java.lang.reflect.Array;
/**
*
* @author QuinnNorris
* 在泛型方法中创建泛型类型的数组
*/
public class