當我運行我的代碼時,它給我一個錯誤,說:「令牌上的語法錯誤」{「,在該令牌後拋出預期。錯誤在第7行的代碼中。此令牌錯誤後拋出預期
class WhileLoopTest {
public static void main(String[] args){
apple = 0;
while (apple = 0) {
(int)(Math.random()*(60) + 5);
return;
}
}
}
當我運行我的代碼時,它給我一個錯誤,說:「令牌上的語法錯誤」{「,在該令牌後拋出預期。錯誤在第7行的代碼中。此令牌錯誤後拋出預期
class WhileLoopTest {
public static void main(String[] args){
apple = 0;
while (apple = 0) {
(int)(Math.random()*(60) + 5);
return;
}
}
}
就行while (apple = 0)
您正在設置變量而不是聲明它。 while
循環期望您通過它boolean
。您可能試圖使用比較等於==
。全行應爲while (apple == 0)
。
您需要添加額外的等號while語句中的條件(在你指定的0到蘋果的價值的那一刻,而不是發短信,如果它是相等的),所以它看起來像這樣
while(apple == 0){
請注意,while循環完全沒有功能,因爲您正在循環內返回。當您從主要的方法返回時,這將停止您的程序執行。隨機數的計算在這裏沒有任何用處,因爲您沒有爲其分配變量或打印它。
此外,您沒有爲蘋果變量定義類型。嘗試使其類型int。
int apple = 0;
我建議你看看關於java的一些教程,因爲你似乎誤解了語言中的幾個概念。
首先,你需要定義一個類型爲你的變量蘋果,因爲的Java是靜態類型
apple = 0;
Read more About Statically typed vs Dynamically typed
變化
int apple = 0;
二, (int)(Math.random()*(60) + 5);
不言,所以你需要打印該值或返回它
三,while (apple = 0) {
是錯誤的,因爲編譯器尋找布爾表達式
while(Boolean_expression)
{
//Statements
}
變化while (apple == 0) {
我不知道爲什麼一半線路編譯。也許如果你修復所有其他線路,錯誤將消失。 – 2014-10-07 18:42:26
你的代碼甚至不會編譯 – Rustam 2014-10-07 18:43:02
蘋果應該是什麼?我沒有看到它在任何地方宣佈。 '='是一個賦值運算符,而不是比較運算符。那麼計算一個隨機數字又有什麼意義,而不是對它做任何事情? – 2014-10-07 18:43:05