gpt4 book ai didi

java - 如何在Java中创建一个不规则形状的二维数组

转载 作者:行者123 更新时间:2023-12-04 10:36:46 25 4
gpt4 key购买 nike

我需要为纸牌游戏创建一个二维数组,如下图所示。该数组共有 5 行,前两行每行包含 5 列,底部三行每行包含三列。最好的方法是创建一个典型的 5x5 方形数组并将 NULL 值放在 6 个空单元格中吗?或者是否有更复杂的方法来处理形状奇特的二维数组?

Square[][] Board = new Square[5][5];
board[5][5] = NULL;

Array Shape

最佳答案

Would the best method be to just create a typical 5x5 square array and place NULL values in the 6 empty cells?



是的,我认为这将是最直观的解决方案。请记住,您需要区分空调用和空卡单元格,因此不能对两者都使用 null。这应该不是问题:一个常量实例 Square.EMPTY有助于。

二维数组是这类游戏最好的数据结构。如果你能想出一种方法来说明边界是什么以及如何很好地迭代板,你会没事的。

Or is there a more sophisticated way to do this for oddly shaped 2D arrays?



我想不出任何。你可以有
Square[][] board = new Square[MAX][];

board[2] = new Square[MAX];
board[3] = new Square[NOT_MAX];

但对于长度为 NOT_MAX 的数组,您还需要存储一个偏移量。它使事情复杂化,并假设模式始终如您所展示的那样简单。对于中间有间隙的模式,它不起作用。

关于java - 如何在Java中创建一个不规则形状的二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60142040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com