以下声明指定了哪种数据结构?
List<ArrayList>[] myArray;
Run Code Online (Sandbox Code Playgroud)
我认为它应该声明一个数组,其中每个元素是一个List(例如,一个LinkedList或一个ArrayList),并要求每个元素List包含ArrayList对象.
我的推理:
List<String> someList; // A List of String objects
List<ArrayList> someList; // A List of ArrayList objects
List<ArrayList>[] someListArray; // An array of List of ArrayList objects
Run Code Online (Sandbox Code Playgroud)
在运行一些测试之后,我确定它接受一个数组,其中每个元素都是一个LinkedList对象,并没有指定LinkedList对象包含的内容.
因此,List<ArrayList>指定List必须包含的内容,但List<ArrayList>[]指定List必须如何实现.
我错过了什么吗?
这是我的测试.
import java.util.ArrayList;
import java.util.List;
import java.util.LinkedList;
public class Generics1 {
public static void main(String[] args) {
List<ArrayList>[] someListArray;
someListArray = getArrayWhereEachElementIsAnArrayListObject();
// Why does this …Run Code Online (Sandbox Code Playgroud)