关于ArrayList <Integer> [] x的Java问题

Dav*_*les 5 java arrays generics arraylist

我一直有这个ArrayLists数组的问题.也许你可以帮忙.

//declare in class
private ArrayList<Integer>[] x;

//in constructor
x=new ArrayList[n];
Run Code Online (Sandbox Code Playgroud)

这会生成有关未经检查的转换的警告.

x=new ArrayList<Integer>[n];
Run Code Online (Sandbox Code Playgroud)

是一个编译器错误.

任何的想法?

谢谢!

Emi*_*mil 5

我认为你不能制作通用数组列表的数组,因为运行时没有通用信息可用。相反,你可以这样做:

List<Integer>[] arr=new ArrayList[30];
arr[0]=new ArrayList<Integer>();//create new arraylist for every index.
Run Code Online (Sandbox Code Playgroud)


ext*_*eon 5

你不能制作一系列泛型列表.幸运的是,有一些解决方法.更幸运的是,有一个很好的网站关于泛型的信息比你想知道的更多.该链接直接指向Java Generics部分中的Arrays.