我想创建一个数组ArrayList<String>.我尝试了以下方法:
static ArrayList<String>[] displayBlocks = new ArrayList<String>[3];
Run Code Online (Sandbox Code Playgroud)
但是,我得到一个编译时错误:
通用数组创建
我补充说import java.util.*;.我怎样才能编译它?
Dar*_*der 10
如果你想要一个arraylist数组:
import java.util.ArrayList;
import java.util.List;
public class Foo{
List [] arrayOfLists = new ArrayList[10];
}
Run Code Online (Sandbox Code Playgroud)
这是一篇相关的帖子.你不能创建一个通用的arraylist数组.你可以这样做:
import java.util.ArrayList;
import java.util.List;
public class Foo{
ArrayList<ArrayList<String>> ll = new ArrayList<ArrayList<String>>();
}
Run Code Online (Sandbox Code Playgroud)
在Java中确实不允许使用此构造.你可以使用varargs hack:
static List<String>[] displayBlocks = createArray(3);
Run Code Online (Sandbox Code Playgroud)
同
public static <E> E[] createArray(int length, E... elements) {
return Arrays.copyOf(elements, length);
}
Run Code Online (Sandbox Code Playgroud)
毋庸置疑,a List<List<String>>更好,除非你对内存非常紧张,但后来我不知道为什么你不使用String[][].
| 归档时间: |
|
| 查看次数: |
6176 次 |
| 最近记录: |