2012-03-28 61 views
-2

我需要顯示三個給定數字的最大數字。 'Z'應該顯示爲25是最大的數字。無論如何,編譯時顯示出來。 Error MessageJava錯誤'else'沒有'if'

我不知道如何解決這個問題,我在課堂上給出的例子是不正確的,在網上查看時,大多數其他代碼比我的複雜得多,而且幫助不大。 我的代碼如下:

class Greater 
{ 
    public static void main(String args[]) 
    { 
     int x = 10, y = 5, z = 15; 
     if (x>y) and (x>z); 
     { 
      System.out.println(x); 
     } 
     else if(y>z); 
     { 
      System.out.println(y); 
     } 
     else 
     { 
      System.out.println(z); 
     } 
    } 
} 
+0

[錯誤的可能重複:'else'without'if'](http://stackoverflow.com/questions/13059729/error-else-without-if) – 2014-10-15 02:30:16

回答

7

你有一個;後,你的if語句,這使得他們什麼都不做。刪除它們。

你需要寫

if(x > y && x > z) 

if (x>y) and (x>z); 

被解析爲

if (x > y) { 
    and(x > z); 
} 
+0

當我刪除;它告訴我;是期待。 – 2012-03-28 20:12:52

+0

因爲'和'不應該在那裏? – 2012-03-28 20:13:28

+0

我也試過&&而不是,但它說這是表達式的非法開始。 – 2012-03-28 20:14:37

1

在哪裏你if()是在該行刪除分號。

2

你不需要「;」在if或for循環之後。

1

刪除分號if條款的結束括號後面:

if (x>y) and (x>z); <--- WRONG! 

else if(y>z); <--- WRONG! 
3

你不能只寫

if (x>y) and (x>z) 

語法

if((x>y) && (x>z)) 
+0

謝謝!現在它的工作 – 2012-03-28 20:16:27