Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.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中使用Switch语句?_Java - Fatal编程技术网

如何在Java中使用Switch语句?

如何在Java中使用Switch语句?,java,Java,我需要在我的程序中输入一个开关状态,我想清楚我在哪里可以中断并继续。休息时间到了,我不懂这个密码;请给我一个简单的数字好吗?我需要清楚和更明智的解释。我已经搜索过了,这是我得到的,但还没有回答我的问题,我们在什么时候中断或继续,这是我看到的。我需要链接;() 您需要在每个案例块的末尾休息。否则,将执行匹配后的每个case块,直到遇到中断。上述Switch语句的工作原理如下: 如果等级为“A”,应用程序将打印“优秀”,并从开关状态中断 如果等级为B或C,则打印“干得好”,并从switch语句中断

我需要在我的程序中输入一个开关状态,我想清楚我在哪里可以中断并继续。休息时间到了,我不懂这个密码;请给我一个简单的数字好吗?我需要清楚和更明智的解释。我已经搜索过了,这是我得到的,但还没有回答我的问题,我们在什么时候中断或继续,这是我看到的。我需要链接;()


您需要在每个案例块的末尾休息。否则,将执行匹配后的每个case块,直到遇到中断。

上述Switch语句的工作原理如下:

如果等级为“A”,应用程序将打印“优秀”,并从开关状态中断

如果等级为B或C,则打印“干得好”,并从switch语句中断

若成绩是D,它会打印“你们通过了”,但由于并没有中断,应用程序也会转到案例F(D的正下方),打印“最好再试一次”,然后中断

若成绩为F,应用程序打印“最好再试一次”,然后爆发

如果给出了任何其他等级值,应用程序将打印“无效”

最后程序打印“yougot:XX”

因为等级在程序中是硬编码的,所以只有B分支工作。尝试将其更改为其他值以查看发生了什么


干杯。

开关语句类似于一系列
if
语句,按照它们在代码中出现的顺序进行计算。一旦其中一个条件求值为
true
,它就会开始执行其后的所有代码,直到遇到
中断

在你的例子中,你通过了等级'B'。它首先检查
案例“A”
。显然,a'B'不是'a',因此它跳过该段代码(将打印出'Excellent')并检查下一个条件。接下来,
case'B'
计算
true
,因为您传入了'B',所以它现在将开始执行它看到的所有代码,直到它达到
中断。这意味着它将打印出“做得好”,然后点击
break
,跳出switch语句


这种设计意味着您可以让多个不同的条件执行相同的代码,如示例中所示。a'B'和a'C'都将打印出'good Done',因为它们之间没有中断。

好吧,让我介绍一下切换语句;switch语句允许根据值列表测试变量是否相等。每个值都称为一个case,并针对每个case检查正在打开的变量

现在看看下面的例子;我会用这个例子

switch(expression){
    case value :
       //Statements
       break; //optional
      case value :
       //Statements
      case value :
       //Statements
        case value :
       //Statements
       break; //optional
    //You can have any number of case statements.
    default : //Optional
       //Statements
}
为了回答您的问题,请注意:我已经指出它是可选的,因此您可以在任何地方应用断点。现在我们对switch语句有几个规则

这可能会帮助你更好地理解它

注1:switch语句可以有一个可选的默认情况,它 必须显示在开关的末尾。默认情况下可用于 当所有情况都不正确时执行任务。不需要休息 在默认情况下

注意:并非每个案例都需要包含中断。如果没有出现中断, 控制流程将通过后续案例进行,直到 休息时间到了

注意:当到达break语句时,开关终止,并且 控制流跳到开关后的下一行 声明

注意:案例的值必须与变量的数据类型相同 在开关中,它必须是常量或文字 被打开等于一个案例,下面的陈述 case将一直执行,直到到达break语句为止

请记住:switch语句中使用的变量只能 可以是字节、短字符、整数或字符


有一个非常好的教程:

你发布的代码没有问题

然而,值得注意的是,“B”或“C”级也会产生相同的结果。“B”的case中缺少break语句会导致执行下降到下一个case语句,即使条件不匹配。它的书写方式就像一个“或”语句

值“D”将打印“youpassed”和“bettertrytear”,这也是因为缺少break语句

请看一下教程


祝你好运

关于代码如何工作或switch语句如何工作,您有什么“问题”?另外,请务必阅读和其他介绍性信息。发布的代码就是一个例子。你对此有什么“问题”吗?你有具体的问题吗?堆栈溢出不适用于教程。我已经看到了一些答案。我会用。谢谢大家。“我想知道如何使用X”不是这里鼓励的问题。通过谷歌搜索教程或示例,您几乎总能找到如何使用X。当你写了一个程序,它要么无法编译,要么以你不理解的方式运行,并且你所有的努力都是徒劳的,请回到这个网站。
switch(expression){
    case value :
       //Statements
       break; //optional
      case value :
       //Statements
      case value :
       //Statements
        case value :
       //Statements
       break; //optional
    //You can have any number of case statements.
    default : //Optional
       //Statements
}