Java漫谈7

这次我们聊聊上次没有聊到的switch语句。

首先设想这么一种去吃饭的场景,我进到美食城,看着各种各样的餐馆,不知道吃什么好的时候,选择就变得尤其重要。我可以按照我的兴趣爱好选择,比如我喜欢吃清淡的,就可以去茶餐厅、港式餐厅。亦或是我需要速度非常块的,我就可以去肯德基、麦当劳。再或者,我喜欢吃面食的,就可以选择面馆。如果仅仅是按照以上这三类来划分的话,那么,便很容易用if语句完成判断。但如果划分的标准由三个变成10个呢,那么if语句就显得太过繁琐了。

而此时用switch的话,就会显得简洁。

如果你初学编程,尤其是学Java,switch你是绕不过去的。而当你学习的时候,折腾你的可能还不是switch的定义,而是switch的语法,尤其是break的用法。就是今天我自己用switch的时候,遇到break的地方也要多留神,尤其是程序在switch语句这块出问题的时候,尤其会注意检查break使用。

在switch中,每一个case中若有break,则执行完该case之后就直接跳出switch判断了,反之,如果没有break,则执行完该case之后,还会接着判断下面的case是否符合条件,如果符合的话,就会进入到那个case内部的程序执行,如此循环,直到执行完毕。

今天我们主要聊了下switch 中 break 的一个小的注意点,希望对你使用switch有帮助。

SWITCH 清单

  1. Java中面对多个选择时可以直接使用switch,这样逻辑上简洁。
  2. switch中break的用法是个坑,有它时,case执行完就跳出switch判断了。没有它,case执行完毕,会继续进行下一个case的判断。
  3. switch可以让if的判断显得简洁,但是如果switch语句搞定不了,还是建议换成if判断。

原文发布于微信公众号 - 怀英的自我修炼(hydzwxl)

原文发表时间:2017-10-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Golang语言社区

Gopher面试中的Coding

从四月份下半月开始,陆陆续续面试了几家公司,都是golang的岗位。每一次面试,侧重点都会有不同,有的会直接给过来一道试题, 然后边解题,边讲述自己的思路,然后...

3697
来自专栏CDA数据分析师

10个应该早点知道的Python技巧

我的这一生都在编程,但是我没有成为一名程序员。最初,我的大部分工作都是用Visual Basic来完成的,还包括一些其它语言工具,比如R语言,C语言、JavaS...

2029
来自专栏数说工作室

4. call PRXPOSN() | 撕数据!

【SAS Says·扩展篇】撕数据! | 4. call PRXPOSN() 0. 前集回顾 1. 新的问题 2. 初识 PRXPOSN() 3. 问题解决 -...

3436
来自专栏牛客网

知识总结:那些年在编程题中踩过的坑循环输入输出处理常见问题对于各种语言的一些基本知识关于输出格式关于时间复杂度分析:最后关于 "我本地能通过,交上去就是不对"

循环输入输出处理常见问题 1、为什么需要循环输入输出:通常来说OJ对于每道题里面有.in和.out文件,分别表示测试数据的输入和输出。如果某些编程题的所有数据都...

3708
来自专栏数说工作室

2. PRXPARSE () | 正则表达式的“阿赖耶识”

阿赖耶识...为宇宙万有之本,含藏万有,使之存而不失,故称藏识。又因其能含藏生长万有之种子,故亦称种子识。 ——《佛光大辞典》 佛家说人有九识,除眼、耳、鼻、...

3296
来自专栏数说工作室

【SAS Says】基础篇:update、output、transpose以及相关的数据深层操作

特别说明:本节【SAS Says】基础篇:update、output、transpose以及相关的数据深层操作,用的是数说君学习《The little SAS ...

3176
来自专栏C语言及其他语言

[每日一题]字符串的比较

思来想去,相信大家一些基本的语法都差不多了,今天就给大家看一题 题目描述 输入三个字符串,按由小到大的顺序输出 输入 3行字符串 输出 按照从小到大输出成3行...

2799
来自专栏take time, save time

你所能用到的数据结构(六)

八、数据结构不一定很枯燥   正如我现在实习的公司的一个同事说的那样,数据结构是一本催眠的书,我想对于大多数人应该是这样的,当然对我也是,看着一大堆的算法,结...

3155
来自专栏数说工作室

移形换影 | 【SAS Says · 扩展篇】

【SAS Says·扩展篇】移形换影 | 5. call PRXCHANGE() 0. 前集回顾 1. 新的问题 2. 初识 PRXCHANGE() 3. 问题...

33011
来自专栏程序员互动联盟

在编程中写的最多的一句代码是啥?

挺有意思的一个问题,作为一个天天写代码的人平时也没怎么太在意这些细节,过滤了几种编程语言,大致总结了几种常用的代码

853

扫描关注云+社区