繁体   English   中英

使用NetBeans IDE 8.0.2的Java

[英]java using NetBeans IDE 8.0.2

我无法清除情况2和情况3第二行中的以下错误'('或'['。我编写的代码是newAnimal.displayInfo();。

我不确定为什么在情况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;
    }
    }
}
}
while(-4 != quit); 

摆脱分号,应该只是

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

是的,当您有new Penguinnew Tortoise ,会丢失括号和分号

创建新对象后,似乎缺少括号。 所以这:

newAnimal = new Penguin

应该变成这个:

newAnimal = new Penguin();

这是因为要将newAnimal设置为Penguin对象的新实例,并且要创建该新实例,必须调用Penguin类的构造函数来创建该对象。

另外,正如Jurko所说,您的while循环设置不正确。

while(-4 != quit);

您必须删除分号,否则循环将无限期地运行而不执行您在其下的代码。 while循环的正确语法是

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM