有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java跟踪动态导航

我有一个网格(4x6),由较小的瓷砖/砌块组成。 当有人在网格中移动时,我需要准确地跟踪他们移动到的位置。 所以,如果我给瓷砖编号

 1- 2- 3- 4- 5- 6
 7- 8- 9-10-11-12
13-14-15-16-17-18

现在,如果我10岁,我可以换到4,9,11,0或16岁

我该如何记录这件事?我可以使用什么数据结构来存储此信息


共 (1) 个答案

  1. # 1 楼答案

    3种选择

    面向对象的方法:

    创建一个网格类,其中包含一个二维数组。它可用于创建surrounding(int x, int y)等方法,这些方法将返回周围的分幅

    二维阵列

    像面向对象的方式,但有点混乱。你可以从(x-1,y),(x+1,y),(x,y+1),(x,y-1)中得到周围的瓷砖

    一维阵列

    就像你在例子中说的那样。这可能很难使用,我不推荐它。如果您确实想使用这种方式,那么就必须为网格的“宽度”使用另一个int变量。在提供的示例中,它是6,因此周围的瓷砖是:

    (i-6)、(i-1)、(i+1)、(i+6)

    我强烈推荐2D阵列或栅格选项。如果你想把东西做得尽可能漂亮的话,我更喜欢网格