“Else If”语句中的代码错误

时间:2013-09-23 12:54:21

标签: java

我在以下代码中遇到错误...

elseif(option.equals("S")||option.equals("s"))  // Error Expected Symbol ;
{
   ScientificCalculator sc=new ScientificCalculator();
   sc.Calc();
}

如果我在其他地方输入分号,如果声明我做什么

8 个答案:

答案 0 :(得分:4)

你需要在elseif之间放置空格并进行字符串比较,你可以使用equalsIgnoreCase来忽略大小写

   else if(option.equalsIgnoreCase("S")) 
   {
        ScientificCalculator sc=new ScientificCalculator();
        sc.Calc();
   }

答案 1 :(得分:2)

Java不知道elseif,您需要else if

您的代码也可以缩短为:

else if(option.equalsIgnoreCase("S")) {
  // do stuff
}

答案 2 :(得分:2)

尝试使用if而不是写或(||)尝试使用字符串类的equalsIgnorecase方法。所以重写你的代码如下。我不是说你使用或编写错误的代码,但是使用equalsIgnorecase会阻止额外的检查,它也会提高代码的可重用性

else if(option.equalsIgnoreCase("S")) 
{
   ScientificCalculator sc=new ScientificCalculator();
   sc.Calc();
}

答案 3 :(得分:1)

您在两个关键字elseif之间错过了一个空格。

else if(option.equals("S")||option.equals("s")) { /// rest to follow

答案 4 :(得分:1)

您需要使用else if,而不是elseif

else if(option.equals("S")||option.equals("s"))  
{
   ScientificCalculator sc=new ScientificCalculator();
   sc.Calc();
}

答案 5 :(得分:1)

Java使用else if

elseif语法错误。

答案 6 :(得分:0)

  

如果我在其他地方输入分号,如果声明我做什么

是的,这是预期的行为!并且一个常见错误永远不会忘记曾经调试过一次。

if(someCondition); //BAD BAD BAD 
          //an empty code block is run when someCondition is true -- not very useful
{...instructions...} //these are run regardless of someCondition

此外,这些都是常见的错误:

for(int i=0;i<1000;i++); //BAD BAD BAD!
{ ... instructions ... } //this is only run once, regardless of i. 
          //Actually i is out of context here, so compiler will point it out...



int i=0;
while(i<1000); //BAD BAD BAD!
{...instructions...} //never run, as the while loop (thanks jlordo) runs infinitely
          //i is valid, and has the value of 1 - so compiler will be quiet...

答案 7 :(得分:0)

没有这样的事情:

if {} elseif{}

存在:

if
{}
else 
{
if //Independent if
 {}
}

而Java让你把它写成:

if{}
else if{}