首页
学习
活动
专区
圈层
工具
发布

我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。...但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。...是不是觉得我在无事生非,错怪了小王!但此时我要送上《了不起的盖茨比》中的一句话: 我年纪还轻,阅历不深的时候,我父亲教导过我一句话,我至今还念念不忘。...switch 表达式还有更厉害的,-> 右侧还可以是 {} 括起来的代码块,就像 Lambda 表达式那样。...“不好意思,我为昨天早上的嚣张向你道歉。。。。。。”我向小王发送了一条信息。

55120
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JS高级测试: 请问此switch代码的最终运行结果是多少?

    考核内容: javascript 选择函数的使用 题发散度: ★★★ 试题难度: ★ 解题思路: JavaScript Switch 语句 请使用 switch 语句来选择多个需被执行的代码块之一。...switch(表达式) { case n: 代码块 break; case n: 代码块 break; default...: 默认代码块 } Switching 的细节 如果多种 n 匹配一个 n 值,则选择第一个 n值; 如果未找到匹配的 n label。...如果未找到默认 label,程序将继续 switch 后的语句。 严格的比较 Switch case 使用严格比较(===)。 值必须与要匹配的类型相同。...所以 n 是一个具体的值,才可以被严格比较 题目中没有一个n能匹配,会执行DEFAULT 什么也不会输出 参考代码: 答案: D. 什么都不会输出

    1K20

    分支和循环

    并且else总是与最近的if进行匹配.所以说在代码编写的过程中,代码的排版是很重要的. 逻辑操作符 • ! :逻辑取反运算符(改变单个表达式的真假)。...注: • switch 后的 expression 必须是整型表达式 • case 后的值,必须是整形常量表达式 case 和后边的数字之间必须有空格 每⼀个 case 语句中的代码执⾏完成后,需要加上...在 do while 循环中先执⾏图上的“语句”,执⾏完语句,在去执⾏“判断表达式”,判断表达式的 结果是!=0,则继续循环,执⾏循环语句;判断表达式的结果==0,则循环结束。...整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循 环。...2.continue 的作⽤是跳过本次循环中 continue 后的代码,直接去到循环的调整部分。未来当某个条件发⽣的时候,本次循环⽆需再执⾏后续某些操作的时候,就可以使用continue 来实现。

    10510

    【C语言基础篇】结构控制(下)转向语句break、continue、goto、return

    在编写代码时,应根据实际需求选择合适的转向语句,并确保代码的可读性和可维护性。...break 被执行,直接就会跳出循环或switch代码块,继续往后执执行。...如果没有在某个case后面没有break语句,代码会继续往下执行,有可能执行其他 case语句中的代码,直到遇到 break 语句或者 switch 语句结束 比如下面这个例子,输入一个数字打印周几...语句后边的部分不再执行,直接进入下一次循 下面依然以打印1-10的数字为例,分别展示continue在三种循环中的使用和效果 1. continue在 while 循环中 #include 代码,直接进入下一次循环 但continue在三种循环中的使用效果有所不同: 在while循环和do...while循环中,如果continue

    2K10

    【Java】循环语句for、while、do-while

    循环语句 1.1 循环概述 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环 体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false...,从而结束循 环,否则循环将一直执行下去,形成死循环。...③具体执行的语句 ④循环后,循环变量的变化情况 输出10次HelloWorld do...while 循环的特点:无条件执行一次循环体,即使我们将循环条件直接写成 false ,也依然会循...1.6 跳出语句 break 使用场景:终止 switch 或者循环 在选择结构 switch 语句中 在循环语句中 离开使用场景的存在是没有意义的 continue 使用场景...扩展知识点 2.1 死循环 死循环: 也就是循环中的条件永远为 true ,死循环的是永不结束的循环。例如: while(true){} 。

    9.5K10

    解析PHP跳出循环的方法以及continue、break、exit的区别介绍

    foreach循环几种,不管哪种循环中,在PHP中跳出循环大致有这么几种方式: 代码: 代码如下: switch语句中)使用continue,程序将会出错。 例如在下面的这段PHP代码片段中: 代码如下: PHP的代码片段的作用是输出100以内,既不能被7整除又不能被3整除的那些自然数,循环中先用if条件语句判断那些能被整除的数,然后执行 continue;语句,就直接进入了下个循环。...break break是被用在上面所提的各种循环和switch语句中的。他的作用是跳出当前的语法结构,执行下面的语句。...> 这里使用了break 2跳出了两重循环,你可以试验一眼,将2去掉,得到的结果是完全不一样的。如果不使用参数,跳出的只是本次循环,第一层循环会继续执行下去。

    7.1K40

    【C语言】--分支和循环语句还没搞定吗?来看看这篇吧

    2.switch语句 switch 语句也是分支结构的语句,是一种特殊形式的if -else结构,用于判断条件有多个结构的情况,相比之下switch语句更简洁高效 注:switch 后的表达式必须是整形表达式...case 后的值必须是整形常量表达式 eg:判断星期 #include int main() { int day = 0; scanf("%d", &day); switch...,跳出循环后继续往下执行 continue:跳过本次循环中continue后面的代码,但在for和while循环中有所区别 区别如下: while循环中: continue可以跳过某次循环continue...后面的代码,直接到循环的判断部分,进行下一次循环的判断,如果循环的调整在continue后面,可能造成死循环 for循环中: 练习:打印素数 打印素数还有很多更简洁的写法,在这里就不多叙述了...博主也是在学习阶段,难免会出现纰漏,文章如果有什么问题,欢迎各位大佬批评。

    24800

    我用Java代码模拟出了德国二战的Enigma密码机加密

    今日推荐文章:API调用中的身份验证与授权实践-腾讯云开发者社区-腾讯云 点评:深入探讨了API调用的身份认证与授权的问题,并给出了实现,非常值得学习 一、介绍 在二战期间,加密大大添加破解的难度。...那么我们不妨按下开关,会发生什么情况 当按下开关A,灯泡B亮了 当按下开关B,灯泡C亮了 当按下开关C,灯泡A亮了 到了这一步,你已经初步理解了Enigma密码机是如何工作的了,我在上面仅仅只有3个开关...、中间转子、右边转子 电流再次经过接插板(再看一遍混淆连线情况,有混淆的会以混淆的字母继续往后走) 这时候连接到对应的灯泡了,电流再经过电池 电路闭合,对应的灯泡亮起 三、Java代码还原 1)转子组...Constant.SIZE; return currentPosition == initPosition; } ​ } ​ } 2)插接板 插接板的代码比较简单...首先计算出了当前转子偏移量, 再计算出当前转子输入字符的位置是哪个触点 获取到当前触点,经过映射之后的字符 再计算出映射之后字符的触点位置 将这个信息返回出去,回到转子组可以看到,带着这个触点位置的信息

    1.1K40

    C语言分支与循环(下)包含goto语句哦

    原因是switch语句也是分支效果的,只有在switch语句中使用break才能跳出switch语句,如果某一个case语句的后边没有break语句,代码会继续往下执行,有可能执行其他case语句中的代码...求和(这里下图代码累加到s里面了,而3的倍数的个数通过符合if语句的数再通过sum++循环不断叠加) 这里我还加了3的倍数的个数。...我觉得这就是算法的区别嘛,所谓算法就是计算的方法,你有更好地算法基础肯定写出来的代码也更省时省力是吧。...continue的作用是跳过本次循环中continue后边的代码,在for循环和while循环中有所差异的。...5.1.2 continue举例 continue是继续的意思,在循环中的作用就是跳过本次循环中continue后边的代码,继续进行下一次循环的判断。

    15310

    JavaScript之选择控制语句(if,switch,while,do-while,for循环)及很重要的表达式真与假

    作者 | 随笔川迹 ID | suibichuanji 前言 撰文:川川 您将在本文当中学习到 顺序语句 分支语句 If判断,switch,while循坏,do..while循环,for循环,表达式中的真...嵌套) while语句(往往一进入,就需要判断,需要条件为真时执行一组语句) switch语句(多个case子句匹配) 03 If判断语句 条件语句是一种代码结构,用来测试表达式的真假,并根据布尔表达式的结果执行不同的代码...:可以看的出,switch语句有几下特点 switch语句常用于判断固定值的时候用 凡是能用switch能做的,用if都能做,单反过来则不行 在实际开发中,如果需要进行代码的优化,当遇到多个条件是等值条件的判断选择时...要在循环中执行多条语句,可以使用块语句({ ... })包住多条语句 注意:使用break语句在条件表达式计算结果为真之前停止循环 如下代码所示:求1-100之和 var number = 1;...,需要注意几点: 循环的初始条件是定义在外面的 只有while中条件表达式为真时,才执行里面的语句体 while循环中应该有循环变量的更新,否则它会造成死循环 06 do...while循环 创建一个执行指定语句的循环

    3.5K20

    C语言中的分支循环语句(for,while,do...while篇)

    上篇和大家分享了C语言中的分支循环语句(if、switch),这篇和大家分享C语言分支循环语句中的for循环、while循环、do...while循环 1、while循环 1.1. if与while的对比...2、for循环 2.1. for循环的语法形式 for(表达式1;表达式2;表达式3;) 语句;//如果循环中想包含多条语句,可以加上大括号 表达式1用于循环变量的初始化 表达式2用于循环结束条件的判断...整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循 环。...、判断、调整这三个部分,但是 for 循环的三个部 分⾮常集中,便于代码的维护,⽽如果代码较多的时候 while 循环的三个部分就⽐较分散,所以从形 式上 for 循环要更优⼀些。...3.2. do...while循环的执行流程  在 do while 循环中先执⾏图上的“语句”,执⾏完语句,在去执⾏“判断表达式”,判断表达式的 结果是!

    14510

    JAVA语言程序设计(一)04747

    大家好,又见面了,我是你们的朋友全栈君。 indows常用快捷键和常见命令 省略100万行 二进制=>0、1 一个字节是八位。...当我们需要这个功能的时候,就可以去调用,这样既实现了代码的复用性,也解决了代码复杂性 怎样定义一个方法呢? 命名规则:小驼峰 ,第一个小写,后面大写。...流程概述和顺序结构 顺序结构 判断语句 需要注意的是:程序里面相乘,我们需要明确的写出* switch switch语句注意事项 多个case后面的数值不可以重复 switch后面的小括号里面只能放四种数据类型...基本数据类型:byte、char、int、short 引用数据类型:String、enum枚举 switch语句很灵活、遇到break结束 循坏结构的基本组成部分,一般可以分成四部分 初始化语句:在循坏开始最初执行...,全都是统一的什么类型 左侧的中括号,代表我是一个数组 左侧的数组名称,给数组取一个名字 右侧的new代表创建数组的动作 右侧的数据类型,必须和左侧的数据类型保持一致 右侧中括号的长度,也就是数组当中,

    6.8K20

    【通关分支与循环(二)】---switch语句,while循环,for循环,do-while循环,break和continue语句

    前言:在上篇文章中我分享了if语句,关系操作符,条件操作符,逻辑操作符的知识;今天这篇文章我将接着分享switch语句,while循环,for循环,do-while循环,break和Continue语句等知识点...让我们来通过一个代码来直接了解一下switch语句的知识点吧~ 图中框起来的部分是一些跟switch相关的知识点,我们来简单讲述一下吧 1.switch语句后的表达式必须是整形表达式;...2.case后的值,必须是整型常量表达式;case和后面的数字必须有空格; 3.在switch后的表达式中的值无法匹配代码中的case语句的时候,要么不处理...,要么加上default子句; 4.每一个case语句中的代码执行完成,需要加上break,才能跳出这个switch语句; 5.switch语句中case语句和default语句没有顺序要求,不过我们一般吧...do—while循环中的作用都一样; 2.continue语句 --continue是继续的意思,在循环中的作用是跳出本次循环中continue后面的代码,继续下一次循环的判断;continue在while

    23510

    【C语言】分支循环总结

    &&的使用 2.== 和 =的区别 3.悬空else 敲代码建议 switch语句 switch语句中的 break default子句  循环语句 while循环​​​​​​​ while语句中的break...改正:  这其实涉及到了我接下去想说的内容,关于代码的风格习惯 敲代码建议 每一句的 if 和 else 后面最好都跟上一个大括号{},就算只有一条也要加上去 这里的{}意为一个代码块,可以理解为一整个语句...不管是对自己,还是对他人,都会让我们更加容易去看懂代码! switch语句 switch 语句也是一种分支语句。 常常用于多分支的情况。...当i=5的时候,遇到break,直接跳出了整个while循环了! 在来看看continue的用法: 当i=5的时候,遇到continue,直接跳过那一次的循环,进入下一次! ...2.continue 在 while 循环中的作用就是: continue 是用于终止本次循环的,也就是本次循环中 continue 后边的代码不会再执行, 而是直接跳转到 while 语句的判断部分

    1.5K30

    抽丝剥茧C语言(中阶)分支语句和循环语句

    输出结果是: 你没看错,不是我没写,而是它什么都没输出,这里是不是就要怀疑我之前是不是说的一直都是错的? 其实并不是,在C语言里,else是和它离的最近的if 匹配的。...其实,你亲爱的编译器给你报错是最好的,因为你知道错误在哪里,最怕的就是代码顺利运行了,得到的结果和你预期的不一样,这时候你就要花时间调试去找是哪里出了问题,有一句话说,程序员30%的时间在写代码,70%...: continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行,而是直接跳转到while语句的判断部分。...不过有些情况第二种更好,以后我的例子可能会有,这里就不举例子了。...给家人们的留言! 这里C语言的分支与循环语句的就讲完了,当然只是知识点和一些例子是不够的,我之后还会出一期分支与循环的练习,我们将会完成一些有趣的代码,比如猜数字游戏,代码关机等等。

    2K00

    超全 | 只有高手才知道的C语言高效编程与代码优化方法(二)

    语句vs查找表 Switch的应用场景如下: 调用一到多个函数; 设置变量值或者返回一个值; 执行一到多个代码片段; 如果case标签很多,在switch的前两个使用场景中,使用查找表可以更高效的完成...循环中的第三条语句是可选的(无限循环可以写为for(;;))。 如下代码拥有同样的效果: for(i=10; i; i--){} 或者更进一步的: for(i=10; i!...如果在循环中一个函数经常被调用,那么就将循环纳入到函数中,这样可以减少重复的函数调用。...循环展开后,循环计数应该越来越小从而执行更少的代码分支。 如果循环迭代次数只有几次,那么可以完全展开循环,以便消除循坏带来的负担,这会带来很大的不同。...尽量不在循环中使用++和–。

    4.6K20
    领券