![](/img/trans.png)
[英]Java: Using a mutator method on element of array with a for loop, not working
[英]Change an element in a 2D array using a mutator method Java
我正在編寫的《戰艦》程序中有三個類,一個驅動程序,一個域和一個輔助程序類。 我想使用mutator方法更改域類中chars的2D數組中元素的值,但是我一直收到“不兼容的類型:嘗試傳遞char時無法將char轉換為char [] []”錯誤。數組中的幫助器類到域類。 我做錯了什么,或者還有另一種方法可以做到這一點。
public void hitOrMiss() {
char[][] tUGB = bShip.getUserGameboard();
char[][] tGB = bShip.getGameboard();
if (bShip.getGameboard()[bShip.getUserRow()][bShip.getUserCol()] == '0') {
System.out.println("You missed!");
tUGB[bShip.getUserRow()][bShip.getUserCol()] = 'O';
bShip.setUserGambeboard(tUGB[bShip.getUserRow()][bShip.getUserCol()]);
//this.userGameboard[userRow][userCol] = 'O';
this.misses++;
this.chances--;
} else {
System.out.println("You got a hit!");
this.hits++;
this.chances++;
this.userGameboard[userRow][userCol] = this.hit;
this.gameboard[userRow][userCol] = this.hit;
}
}
這是mutator類
public void setUserGambeboard(char[][] aUserGameboard){
this.userGameboard = aUserGameboard;
根據您的代碼, tUGB[bShip.getUserRow()][bShip.getUserCol()]
將2d數組tUGB
的值傳遞給需要char[][]
。
因此,錯誤是有道理的; char
和char[][]
是不兼容的類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.