Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 语句必须在onClick中以case-label:SWITCH方法开头_Java_Android_Android Studio_Switch Statement - Fatal编程技术网

Java 语句必须在onClick中以case-label:SWITCH方法开头

Java 语句必须在onClick中以case-label:SWITCH方法开头,java,android,android-studio,switch-statement,Java,Android,Android Studio,Switch Statement,这里我不想使用开关的旧模式,例如case R.id.btnCoolNames:中的开关。 我想在switch中使用if语句。我使用此开关在onClick方法中调用cardwiew 因此,在编写代码时,我会遇到这个错误/弹出窗口。 也许我的代码不对,因为我没有找到任何这样的例子 我怎样才能解决这个问题 您的代码是正确的,但几乎没有错误。 如果使用如果则不要使用开关 移除开关(v.getId()) 您的最终代码为: @Override public void onClick(View v)

这里我不想使用开关的旧模式,例如
case R.id.btnCoolNames:
中的
开关
。 我想在
switch
中使用
if
语句。我使用此
开关
onClick方法中调用
cardwiew

因此,在编写代码时,我会遇到这个错误/弹出窗口。 也许我的代码不对,因为我没有找到任何这样的例子

我怎样才能解决这个问题


您的代码是正确的,但几乎没有错误。 如果使用
如果
则不要使用
开关

移除
开关(v.getId())

您的最终代码为:

@Override
    public void onClick(View v) {

            int vId = v.getId();

            if (vId == R.id.chatcodeBtn1){
                //your code
            }
            else if(vId == R.id.chatcodeBtn2){
                //your code
            }
            else if (vId == R.id.chatcodeBtn3){
                // your code
            }

    }

快乐编码:)

“我想在switch中使用if语句”-是什么让您认为这是有效的语法?看起来你只需要完全摆脱开关部分。。。如果你移除
switch(v.getId()){
和右大括号,你得到的是有效的。如果你只是在做if/else,为什么要使用switch?你能分享一下你在哪里看到这个使用if的“新”样式的开关吗?@JonSkeet谢谢,我现在知道了。