我在Java上是一個初學者,並根據我閱讀,觀看,在線收聽創建了一個簡單的遊戲。只是一個簡單的遊戲,可以幫助我鞏固技術和語法。如何搜索並返回多暗數組中的特定值?
它具有的功能之一是隨機(有點)地形生成。這是一個2D飛行遊戲,我所做的是創建一個int [] [],繪製一條線。它使用for循環遍歷數組,然後使用隨機數生成器來確定下一個「塊」是更高,更低還是處於相同級別的像素。
int a = lengthOfLand;
int b = startHeightOfLand;
int[][] land = new int[a][500];
land[0][b] = 1;
int y = b;
for(x = 1; x < a; x++){
switch(getRandomNumber(3)){
case 0: land[x][y - 1] = 1;
y--;
case 1: land[x][y] = 1;
case 2: land[x][y + 1] = 1;
y++;
(我敢肯定有隨機地形生成一百萬更好的辦法,但我剛開始交手的一切,學習新技術,所以這種方式對我的作品)。
以上都是在我的初始化類中調用的。在遊戲的渲染區域,我們取數組並說出值是否爲1,在提供的x,y值處繪製此圖像。顯然,數組中的所有其他值= 0,所以這些不會被渲染。所以我看到的是,每次我運行遊戲時,都會出現一些起伏不平,所有產生(半),隨機和(最重要)不同的線條。基本上,我使用這個多暗陣列來繪製屏幕上的每個像素。 = 1的值被渲染爲土地的頂部。完善。
但是,我想要做的是啓動一個單獨的陣列,將這塊土地留在這個地方。所以我需要能夠從地面陣列中抽取我們結束的高度(每次遊戲運行時都會因爲隨機元素而有所不同)。基本上,當y = 1和x = a時,我需要找出y的指數。因此,搜索並返回多dim數組的某個「列」中的特定值。
我該怎麼做?我假設我可以使用Array Class中的一個方法,但作爲初學者,我並不知道該在哪裏尋找以及如何處理它。
數組是地獄。在大多數情況下,你想實現一個自定義類,它完全符合你的需求 –