2015-05-17 124 views
0

我在清除以下錯誤'('或'['期望情況2和情況3的第二行時出現問題。我寫的代碼是newAnimal.displayInfo();使用NetBeans IDE 8.0.2的java

我不知道爲什麼我得到的情況下,2和3而不情況下,這個錯誤1.不知道我做錯了任何援助/指導可以理解

這裏是代碼如下。:

package animalinfo; 

import java.util.Scanner; 

public class AnimalInfo 
{ 

/** 
* @param args the command line arguments 
*/ 

public static void main(String[] args) 
{ 
    // TODO code application logic here 
    Scanner input = new Scanner (System.in); 
    Animal newAnimal; 
    int quit = 4; 
    while(-4 != quit); 
    { 
     System.out.println("\n1) Camel" + 
       "\n2)Penguin" + 
       "\n3) Tortoise" + 
       "\n4) Exit Program."); 
     System.out.print("Please select an amimalfrom the list."); 

     int choice = input.nextInt(); 
     switch (choice)  
    {  
     case 1: 
      newAnimal = new Camel(); 
      newAnimal.displayInfo(); 
      break; 
     case 2: 
      newAnimal = new Penguin 
      newAnimal.displayInfo(); 
      break; 
     case 3: 
      newAnimal = new Tortoise 
      newAnimal.displayInfo(); 
      break;  

     case 4: 
      System.out.println ("Thank you for making your selections."); 
      break; 
    } 
    } 
} 
} 

回答

1
while(-4 != quit); 

擺脫了分號,應該只是

while (-4 != quit) 
{ 
    /*Code here*/ 
} 

是的,當你有new Penguinnew Tortoise,你缺少的括號和分號

+0

謝謝!有時候它似乎是把我絆倒的小事情。作爲一名初學者,我意識到細節是多麼重要。再次感謝!您的反饋非常有幫助。 – nel

1

好像你正在創建新的後缺少括號對象。所以這個:

newAnimal = new Penguin 

應該成爲這樣的:

newAnimal = new Penguin(); 

這是因爲你設置newAnimal到企鵝對象的新實例,並創建一個新的實例,你必須調用的constructor企鵝類創建對象。

此外,如Jurko所述,您的while循環設置不正確。

while(-4 != quit); 

您必須刪除分號,否則循環將無限地運行,而不執行其下的代碼。 while循環的正確語法是

while (-4 != quit) { 
    // Code to repeat here 
} 
+0

謝謝!我發現你的反饋非常有幫助。我在這麼長時間的代碼中看到我沒有注意到我忽略的項目。再次感謝! – nel