Switch Case 语句2024年10月29日 | 12 分钟阅读 Switch case 是一种控制语句,用于实现决策逻辑。它由作为独立决策分支的多个 case 组成。它是具有大量条件和缓存内存问题的 if 语句的更好替代品。 C Switch Case 语句为了创建 switch case,C 语言提供了 switch、case 和 default 关键字。switch 的语法如下所示。 C/C++/Java/C#/Javascript Switch Case 语句语法注意事项
Java Switch Case 语句Java switch 与 C 语言 switch 语句类似,并提供相同的功能。在 Java 中,switch 表达式可以是 byte、short、int、char、String 和 Enum 类型。 switch 表达式的类型必须与 case 的类型匹配,否则会生成错误。 Ruby Switch Case 语句Ruby 中的 switch case 具有不同的标识符和声明语法。使用 case 关键字代替 switch,使用 when 代替 case,使用 else 代替 default。 Ruby 使用 === 运算符来匹配 case 和 when 表达式。如果没有任何 when 匹配,则执行 Else 表达式。 使用 === 运算符比较 case 指定的表达式和 when 指定的表达式,并执行匹配的 when 子句的代码。 Ruby Switch Case 语法Rust Switch Case 语句(模式匹配)Rust 不支持 C 风格的 switch case,但具有更好的替代匹配表达式。匹配表达式是一个基于模式匹配的概念,并且具有用于匹配表达式的分支。 它遵循 value => expression 语法,并且匹配表达式匹配每个值并执行相应的表达式。 语法如下所示。 Rust 模式匹配语法我们可以直接与文字进行匹配,并且 _ 充当“任何”case。 Swift Switch Case 语句Swift 的 switch 语句被认为比 C 类型 switch case 更强大。 它用于匹配各种类型的 case,包括范围、元组等。 在 swift 中,switch case 不会穿透到较低的 case。 switch case 的语法如下所示。 Swift Switch Case 语法让我们看一个 switch case 示例,该示例打印我们传递的数字的名称。 C Switch Case 示例 1:整数输入输出 Two 上面的示例根据输入打印 Two,并且由于 break,它会停止进一步的执行并退出 switch 块。 Java Switch Case 示例 1:整数输入输出 Two Ruby Switch Case 示例:整数输入输出 Two C# Switch Case 示例:整数输入输出 Two Php Switch Case 示例:整数输入输出 Two Rust Switch Case 示例:整数输入输出 Two Javascript Switch Case 示例:整数输入输出 Two Swift Switch Case 示例:整数输入C Switch Case 示例:整数表达式它允许我们将整数表达式与 case 一起使用。请参见以下示例。 输出 Three Java Switch Case 示例:整数表达式输出 Three Ruby Switch Case 示例:整数表达式输出 Three C# Switch Case 示例:整数表达式Php Switch Case 示例:整数表达式输出 Three Rust Switch Case:整数表达式Rust 不允许将整数表达式放入匹配表达式中。 因此,应用 1+2 或 a+3 等会在代码中生成错误。 Rust Switch Case:整数表达式 输出 Three Swift Switch Case:整数表达式C Switch Case 示例:字符常量Switch case 同时支持整数或字符常量。 字符由其 ascii 值替换。 注意:C 编译器隐式地将字符常量替换为其 ASCII 值,'a' => 97。输出 It's a Java Switch Case 示例:字符常量Switch case 同时支持整数或字符常量。 字符由其 ascii 值替换。 注意:Java 隐式地将字符常量替换为其 ASCII 值,'a' => 97。输出 It's a Ruby Switch Case 示例:字符常量输出 It's a C# Switch Case 示例:字符常量输出 It's a PHP Switch Case 示例:字符常量输出 It's a Rust Switch Case 示例:字符常量输出 It's a Javascript Switch Case 示例:字符常量输出 It's a Swift 匹配单个字符的示例输出 It's a C Switch Case 示例:没有 Break输出 Two Three value is other than 1, 2, 3 请参见上面的示例,传递了一个整数输入,该输入与 case 2 匹配,不仅执行了该 case,还执行了该 case 之后的所有其他 case,包括 default。 这意味着在没有 break 的情况下,它还会执行其他 case,直到到达 switch 的末尾或找到 break 为止。 Java Switch Case 示例:没有 Break输出 Two Three value is other than 1, 2, 3 Ruby Switch Case 示例:BreakRuby 不使用 break 语句,并且在 switch case 中使用隐式 break,不需要添加额外的 break。 C# Switch Case 示例:BreakC# 不允许从一个 case 隐式地穿透到另一个 case。 我们可以显式地放置 break,或者 C# 使用隐式 break 来防止从一个 case 自动穿透到另一个 case。 如果我们不放置 break 并编译代码,则 C# 会报告一个错误 错误:控制无法从一个 case 标签穿透到另一个 case 标签。 PHP Switch Case 示例:没有 Break在没有 break 的情况下,它将穿透所有 case,直到 switch 完成或找到 break 为止。 输出 It's a It's b It's c value is other than a, b, c Javascript Switch Case 示例:没有 Break它将穿透到最后一个 case 或直到找到 break 为止。它将执行匹配的 case 之后的所有 case。请参见下面的示例。 输出 It's a It's b It's c value is other than a, b, c Swift Switch Case 示例:没有 Break即使删除了 break 语句,它也不会穿透。这意味着 swift 不允许 case 穿透到 switch 中的较低位置。 有时我们想为多个 case 执行通用语句。请参见以下示例。 C Switch Case 语句示例:通用语句输出 It's a 将多个 case 组合在一起以执行通用任务。无论输入是 'a' 还是 'A',它都会打印相同的消息(执行通用语句)。 Java Switch Case 示例:通用语句输出 It's a Ruby Switch Case 示例:通用语句Ruby 在这种情况下不起作用,因为它会隐式地中断每个 when,并将控制从 case 中取出。 C# Switch Case 示例:通用语句输出 It's a Php Switch Case 示例:通用语句输出 It's a Rust Switch Case 示例:通用语句使用 | (或) 运算符可以非常容易地执行通用语句或多个模式。 输出 It's a Javascript Switch Case 示例:通用语句Swift Switch Case 示例:通用语句它要求 case 中至少有一个可执行语句,否则会抛出错误消息。请参见以下示例。 输出 error: 'case' label in a 'switch' should have at least one executable statement. 为了实现这一点,Swift 提供了一个新概念,即使用 , (逗号) 来提供多个 case。请参见以下示例。 输出 It's a Java Switch Case 示例:字符串输入输出 Sunday Ruby Switch Case 示例:字符串输入输出 Sunday C# Switch Case 示例:字符串输入输出 Sunday Php Switch Case 示例:字符串输入Rust Switch Case 示例:字符串输入输出 Sunday Javascript Switch Case 示例:字符串输入输出 Sunday Swift Switch Case 示例:字符串输入输出 Sunday Ruby Switch Case 示例:输入范围When 表达式以范围形式给出,并且在指定范围内匹配输入并执行代码。请参见以下示例。 输出 little child Rust Switch Case 示例:输入范围模式值可以位于该范围内,并匹配以评估表达式。 输出 little child c, c++, java, c#, ruby, php, rust, javascript, python, swift 下一个主题什么是时间复杂度 |
我们请求您订阅我们的新闻通讯以获取最新更新。