为什么我们需要一个接一个的案例陈述?

为什么我们需要一个接一个的案例陈述?

为什么编译器不自动在开关中的每个代码块之后放置中断语句?是出于历史原因吗?何时要执行多个代码块?



冉冉说
浏览 408回答 3
3回答

茅侃侃

有时,将多个案例与相同的代码块关联起来是有帮助的,例如case 'A':case 'B':case 'C':     doSomething();     break;case 'D':case 'E':     doSomethingElse();     break;等等。只是个例子。在我的经验中,“失败”并在一种情况下执行多个代码块通常是不好的风格,但在某些情况下可能会使用它。

人到中年有点甜

历史,是因为case本质上定义了label,也称为目标点一种goto打电话。Switch语句及其相关案例实际上只是表示具有多个潜在入口点进入代码流的多向分支。尽管如此,人们几乎无数次地注意到,break几乎所有的默认行为都是您希望在每一种情况结束时的默认行为。

慕容708150

Java来自C,这是C的语法。有时候,您希望多个CASE语句只有一个执行路径。下面是一个例子,可以告诉你一个月里有多少天。class SwitchDemo2 {     public static void main(String[] args) {         int month = 2;         int year = 2000;         int numDays = 0;         switch (month) {             case 1:             case 3:             case 5:             case 7:             case 8:             case 10:             case 12:                 numDays = 31;                 break;             case 4:             case 6:             case 9:             case 11:                 numDays = 30;                 break;             case 2:                 if ( ((year % 4 == 0) && !(year % 100 == 0))                      || (year % 400 == 0) )                     numDays = 29;                 else                     numDays = 28;                 break;             default:                 System.out.println("Invalid month.");                 break;         }         System.out.println("Number of Days = " + numDays);     }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java