誰能明白為什么我收到“無法從 int 轉換為 boolean”錯誤消息。非常感激public static void main (String[]args) { int max=10; int sum=0; int count=0; for(int counter=0;counter=max-4;counter++) { sum=max-4; count=max-3; for(sum=3;sum<5;sum++) { if(count==0 && max>0){ System.out.println("Hello"); } else if (count<4) { System.out.println("Go for it"); } else { System.out.println("OK"); } } } sum=sum+count; System.out.println("Total = "+sum); System.out.println("Max = "+count);}我覺得我已經使用“==”檢查了 if 條件。
2 回答

慕容708150
TA貢獻1831條經驗 獲得超4個贊
=
是分配,您需要在循環的第二項進行比較。
for(int counter=0;counter=max-4;counter++) {
應該
for (int counter = 0; counter < max - 4; counter++) {
(添加了空格,但注意<
是一個比較......也許你想要<=
)。

蠱毒傳說
TA貢獻1895條經驗 獲得超3個贊
對于 Java,for 循環的語法是
for(initialization; Boolean_expression; update) { // Statements }
1) 初始化部分只在流程第一次進入for循環時執行一次
2)接下來根據條件解析布爾表達式
3) 然后下一步更新語句被解析,在 for 循環體再次執行后,流程轉到布爾表達式,然后更新語句,流程繼續。
因此,在您的程序中,您使用的不是布爾表達式,而是一個賦值運算符,結果是 6,不是 0 或 1。布爾表達式是true = 1
and false = 0
。因此整數 6 不能轉換為布爾值。所以,你可以和counter < max-4
添加回答
舉報
0/150
提交
取消