1
我在寫一個程序,其中有一個來自單元類的對象的二維數組,我需要編寫一個方法,將一個單元格對象作爲參數,我返回一個環繞細胞(N,S,E,W)的細胞陣列列表。每個單元都有一個Point類的位置。我遇到的問題是如何使用我知道的位置(x,y-1是北)來生成一個單元格。任何對此的幫助表示讚賞。謝謝。Java - 使用Point類返回二維數組中的位置值
我在寫一個程序,其中有一個來自單元類的對象的二維數組,我需要編寫一個方法,將一個單元格對象作爲參數,我返回一個環繞細胞(N,S,E,W)的細胞陣列列表。每個單元都有一個Point類的位置。我遇到的問題是如何使用我知道的位置(x,y-1是北)來生成一個單元格。任何對此的幫助表示讚賞。謝謝。Java - 使用Point類返回二維數組中的位置值
如果(X,Y)爲您的單元,則在四個周圍細胞是
(x+1, y)
(x-1, y)
(x, y+1)
(x, y-1)
,你可能使假設
+x axis is EAST
-x axis is WEST
+y axis is NORTH
-y axis is SOUTH
所以
(x+1, y) is EAST to the cell,
(x-1, y) is WEST to the cell,
(x, y+1) is NORTH to the cell and
(x, y-1) is SOUTH
到您將作爲參數傳遞給您的方法的單元格。
感謝您的幫助!我主要遇到麻煩的是如何使用Point類與這一點。所以如果我知道(x-1,y)在單元格的西邊,我怎樣才能得到這個單元格,這樣我就可以將它添加到ArrayList中。 – user1547050
是的,正如我告訴過你的,你必須假設哪個軸是地圖的哪個方向,你必須在整個程序中遵循假設。 – Jayy
我假設你的意思是--y是SOUTH,而不是WEST :)儘管如此,在一些應用程序(尤其是計算機圖形學)中常常會使+ y向南而不是向北。 –