Switch内部的其他语句是语法错误?

时间:2012-03-30 16:28:34

标签: java android switch-statement if-statement

我在以下代码中的else语句中收到语法错误:

switch(v.getId())
{
case R.id.b0 :      
    if(s.length()==1 && s.charAt(0)=='0');
    {  
    et2.setText("0");
    et1.setText("0");
    }
    else
    {
    s=s+"0";
    call(s);
    }
    break;
//2nd case and body
}

错误是:Syntax error on token "else", delete this token

java不允许这样做吗?

我是否必须使用嵌套开关?

或者我的代码本身有问题吗?

3 个答案:

答案 0 :(得分:14)

if(s.length()==1 && s.charAt(0)=='0');

删除;

答案 1 :(得分:4)

if(s.length()==1 && s.charAt(0)=='0');
                                     ^ Remove this!

您提前终止了if声明,而不是您认为的......

答案 2 :(得分:4)

结尾处删除;

应该是:

 if(s.length()==1 && s.charAt(0)=='0')