我無法獲得我的輸出權限。基本上,我正在寫一個基本的搜索遊戲,我的程序有多維char數組(每個索引已經初始化爲一個空格)。有2名玩家輪流猜測(輸入2個空格分隔的數字),如果玩家1猜錯了,它會將'1'存儲到該字符數組中;如果玩家2猜測它錯了,它將是2.但是當他們中的一個猜測它是正確的時,它會顯示它們的數字加上已經存儲在該char數組中的字符'P'(例如:1P或2P)我使用隨機類來隨機化要搜索的對象的位置)。我已經完成了一切,除非我真的不知道如何在char數組的相同索引中顯示球員號碼和'P'。我知道我們不能有2個字符,因爲它是字符。使用多維字符數組?
下面是我的代碼樣本運行(其實我試過,但它會顯示一個「?」):
,這是輸出我猜想得到,當他們發現一名球員的 'P':
下面是代碼當我在toString()方法用來輸出數組:
for(int top = 0; top < totalRooms * 2; top++) {
a+= "__";
}
for(int row = hidingPlaces.length - 1; row >= 0; row--) {
a += "\n";
for(int col = 0; col < hidingPlaces[row].length; col++) {
a += "| " + hidingPlaces[row][col] + " ";
}
a += "|\n";
for(int bot = 0; bot < hidingPlaces[row].length; bot++) {
a += "|___";
}
a += "|";
}
這是我初始化字符數組與玩家#代碼:
public boolean searchRoom(int floor, int room, char players) {
if (hidingPlaces[floor][room] != hidingPlaces[floorLocation][roomLocation]) {
hidingPlaces[floor][room] = players; // fill out those empty spots in the array with players' index
aArray[floor][room] = players; // samething here, except that this array doesn't show 'P'
found = false;
} else {
winner = players; // char winner is now the players' index.
found = true;
}
return found;
}
//output this array if puppy is found.
for(int top = 0; top < totalRooms * 2; top++) {
a+= "__";
}
for(int row = hidingPlaces.length - 1; row >= 0; row--) {
a += "\n";
for(int col = 0; col < hidingPlaces[row].length; col++) {
a += "| " + hidingPlaces[row][col] + " ";
if(hidingPlaces[row][col] == '3') {
a += "1P";
} else if (hidingPlaces[row][col] == '4') {
a += "2P";
}
}
a += "|\n";
for(int bot = 0; bot < hidingPlaces[row].length; bot++) {
a += "|___";
}
a += "|";
}
}
return a;
其實,我的唯一途徑想想把玩家號碼+ P放在同一個單元格中與String有關?如果是這樣,有沒有辦法將2d字符數組轉換爲字符串數組? – Impalerz
任何原因你不能使用3存儲1P找到小狗和4找到2P小狗?如果沒有,那麼你可以在輸出循環中使用一個條件(如果它等於3個輸出「1P」) –
我回滾了你的編輯。你提出問題後不能刪除問題,這對任何出現問題的人都沒用。請不要嘗試再次移除它。 –