![](/img/trans.png)
[英]JAVA: Incompatible types: int cannot be converted to java.lang.String
[英]Java:incompatible types: java.lang.String cannot be converted to int
有人可以幫我修復我的代碼嗎? 我正在嘗試使用二維數組制作三角形
public class Tri {
public static void main(String [] args){
int rows;
int columns;
int i,j;
int [][] arrayNumbers = new int[5][5];
arrayNumbers[0][0] = " ";
arrayNumbers[1][0] = " ";
arrayNumbers[2][0] = "*";
arrayNumbers[3][0] = " ";
arrayNumbers[4][0] = " ";
arrayNumbers[0][1] = " ";
arrayNumbers[1][1] = "*";
arrayNumbers[2][1] = "*";
arrayNumbers[3][1] = "*";
arrayNumbers[4][1] = " ";
arrayNumbers[0][2] = "*";
arrayNumbers[1][2] = "*";
arrayNumbers[2][2] = "*";
arrayNumbers[3][2] = "*";
arrayNumbers[4][2] = "*";
arrayNumbers[0][3] = " ";
arrayNumbers[1][3] = "*";
arrayNumbers[2][3] = "*";
arrayNumbers[3][3] = "*";
arrayNumbers[4][3] = " ";
arrayNumbers[0][4] = " ";
arrayNumbers[1][4] = " ";
arrayNumbers[2][4] = "*";
arrayNumbers[3][4] = " ";
arrayNumbers[4][4] = " ";
for(i=0;i<rows;i++){
for(j=0;j<columns;j++) {
System.out.print(arrayNumbers[i][j] + " ");
}
System.out.println(" ");
}
}
}
但我不斷收到錯誤消息“Java:不兼容的類型:java.lang.String 無法轉換為 int
知道我哪里出錯了嗎? 它一直說它需要一個 int 但它只找到了一個 String
您正在為數組分配String
值。 所以這
int [][] arrayNumbers = new int[5][5];
應該
String[][] arrayNumbers = new String[5][5];
或者您需要分配int
值(如1
、 2
或 2 31 -1)。
實際上,這無論如何都應該用char
數組來完成,如果它必須用 2D 數組來完成的話。
除非您被特別告知將其設為數組,否則有比使用數組更好的方法將形狀打印到控制台。 如果您真的希望將它存儲在數組中,那么char
數組是正確的類型。
雖然靜態填充這些值是一種可怕的時間浪費,並且會導致代碼混亂。 如果您考慮如何僅通過使用循環邏輯來生成這樣的形狀,您將看到同樣的方法可以應用於以算法方式初始化數組。
最后,您的代碼,即使是固定的,也不會生成三角形,而是生成菱形。
更換線路
int [][] arrayNumbers = new int[5][5];
和
String [][] arrayNumbers = new String[5][5];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.