Java - ArrayList<Integer>[][] 可能吗?

Posted

技术标签:

【中文标题】Java - ArrayList<Integer>[][] 可能吗?【英文标题】:Java - Is ArrayList<Integer>[][] possible? 【发布时间】:2011-10-12 12:09:42 【问题描述】:
ArrayList<Integer>[][] matrix = new ArrayList<Integer]>[sizeX][sizeY]();

ArrayList<Integer>[][] matrix = new ArrayList<Integer]>()[sizeX][sizeY];

不工作,我开始认为将 ArrayLists 存储在矩阵中是不可能的?

【问题讨论】:

你想达到什么目的?您发布的两件事显然是不可能的,因为它们无法编译。你能告诉我们你想要什么吗? 【参考方案1】:

如果还想用and数组:

    ArrayList<Integer>[][] matrix = new ArrayList[1][1];
    matrix[0][0]=new ArrayList<Integer>();
    //matrix[0][0].add(1);

【讨论】:

【参考方案2】:

试试

List<List<Integer>> twoDList = new ArrayList<ArrayList<Integer>>();

阅读更多List

【讨论】:

我要做的是创建一个多维数组(矩阵),其中每个位置都有一个 ArrayList。 很难确定,但听起来 OP 实际上想要一个 3d 矩阵:一个 2d 矩阵,其单元格是数组列表。【参考方案3】:

用这个,

List<List<Integer>> matrix = new ArrayList<ArrayList<Integer>>();  

这意味着您的列表将由整数列表组成。

【讨论】:

【参考方案4】:

泛型和数组通常不能很好地混合,但这会起作用(发出警告,可以安全地忽略):

ArrayList<Integer>[][] matrix = new ArrayList[sizeX][sizeY];

【讨论】:

【参考方案5】:

如果你想将一个列表存储在一个数组中,那么你仍然需要将声明和初始化分开:

ArrayList<Integer>[][] matrix = new ArrayList[10][10];

将指定 ArrayList 对象的二维数组。

matrix[0][0] = new ArrayList<Integer>();

将使用新的整数 ArrayList 初始化一个特定单元格。

【讨论】:

以上是关于Java - ArrayList<Integer>[][] 可能吗?的主要内容,如果未能解决你的问题,请参考以下文章

java list 连续n个点大于某个值

使用 If 条件遍历 ArrayList 并使用流 api 返回布尔标志 [重复]

24二叉树中和为某一值的路径

计算质数

通过反射越过泛型检查。。。。

raptor中怎样设置循环数组