`
micheal19840929
  • 浏览: 163159 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

关于switch语句

    博客分类:
  • J2SE
阅读更多

switch语句在一定程度上是有动态跳转(函数指针就是一种动态跳转),另外switch语句绝对不是和if... else if ... else if等效的

switch语句有两种实现:

一、table switch

switch (key) {
case 2:
	...;
case 3:
	...;
case 5:
	...;
case 6:
	...;
}

  

这种语句会得到类似这样的效果:在代码中有对应2到6五个key值的语句起点——就是说包括并没有出现的4。可以这样看,5个起点被存储在一个数组中,可以直接用key - 2作为下标获得需要执行的语句位置。

二、lookup switch

switch (key) {
case 5:
	...;
case 100:
	...;
case 23:
	...;
case 1:
	...;
}

 

对于这种情况,table switch就会很浪费,因为需要整整100个项,而真正用到的key值只有四个。这个时候编译出的代码将只有4个项,分别对应1 5 23 100,是的被排序了。至于为什么排序,不作解释,该明白的人应该已经明白了。

switch语句也有弊端,因为生成的bytecode远比用一串if else大。同时由于需要更长的初始化时间,在项目比较少的时候可能会比if else还慢。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xueyong1203/archive/2006/07/16/928571.aspx

分享到:
评论

相关推荐

    C语言switch语句学习教案.pptx

    C语言switch语句学习教案 switch 语句是 C 语言中处理多路选择问题的一种更直观和有效的手段。在实际应用中,要在多种情况中选择一种情况,执行某一部分语句。当然可以使用嵌套的 if , if else 语句来处理,但其...

    C语言switch语句PPT课件.pptx

    关于switch语句的使用需要注意以下几点: (1) 关于表达式:表达式可以是整型、字符型等表达式,有一个确定的值(不是逻辑值)。 (2) 关于常量表达式1~n:只起到一个标号的作用,根据表达式的值来判断,找到一个相...

    C语言switch语句 ——教学案例分析PPT学习教案.pptx

    本教学案例分析PPT学习教案的主要目的是帮助中职计算机专业学生学习C语言switch语句的格式、执行过程和应用,达到掌握switch语句的格式、理解switch语句的执行过程、掌握阅读、调试switch程序的能力、掌握switch语句...

    C语言switch语句 ——教学案例分析PPT课件.pptx

    主要教学目标包括掌握 switch 语句的格式、理解 switch 语句的执行过程、理解与其他语句的异同、掌握阅读、调试 switch 程序的能力、掌握 switch 语句实现多分支选择结构、领悟使用 switch 语句解决实际问题等。...

    C++语言:switch语句最详细讲解.pdf

    C++语言switch语句详解 switch语句是C++语言中的一种控制流语句,用于根据不同的条件执行不同的代码块。在本文中,我们将详细介绍switch语句的执行过程、注意要点、例题讲解和作业等。 一、switch语句的执行过程 ...

    switch 语句switch 语句

    switch语句 switch 语句 与 if-then 和 if-then-else 语句不同,switch 语句可以具有许多可能的执行路径。switch 可与 byte,short,char 和 int 原始数据一起使用类型。它也适用于 enumerated types (枚举类型)(在...

    Golang中switch语句和select语句的用法教程

    本文主要给大家介绍了...因此,Go语言的switch语句又分为表达式switch语句和类型switch语句。 1、表达式switch语句 var name string ... switch name { case Golang: fmt.Println(Golang) case Rust: fmt.Println

    C语言中分支结构:if语句、if-else语句和switch语句的使用方法.docx

    C语言中分支结构:if语句、if-else语句和switch语句的使用方法 C语言中分支结构是一种非常基本但非常重要的编程结构,它允许程序根据条件执行不同的代码块。在C语言中,分支结构有三种基本类型:if语句、if-else...

    switch语句的使用例子

    switch语句的使用例子

    switch语句,算利润

    c语言程序设计教程(第二版)谭浩强,经典例题,对于学习c语言有很大帮助

    c语言if语句实例_C语言if语句和switch语句实例_If..._

    1、.了解C语言的逻辑运算2、.学会使用if语句和switch语句3、.熟练掌握选择结构程序设计方法

    switch语句的妙用(必看篇)

    switch语句的普通用法很简单,如下: var a = 3; switch (a) { case 1: console.log(a); break; case 2: case 3: console.log(a); break; default: break; } 这里a和case列表中从上而下逐一做比较,如果...

    38.java中的switch语句.zip

    38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip38.java中的switch语句.zip...

    switch语句

    在`js_switch语句练习`这个练习文件中,你可能会发现更多关于`switch`语句的实践案例,包括不同类型的比较、复合表达式的使用以及如何结合其他控制流结构(如`for`循环)来实现更复杂的逻辑。通过这样的练习,你可以...

    c 语言 switch 语句学习

    switch 语句 语法 使用规则 介绍的很详细

    C语言中的switch语句基本用法

    C语言中的switch语句基本用法 switch语句是C语言中的一种多分支选择语句,能够简化代码,提高代码的可读性和维护性。下面将详细介绍switch语句的基本用法和应用。 switch语句的基本格式 switch语句的基本格式如下...

    C语言switch语句ppt课件.ppt

    C语言switch语句 C语言switch语句是一种多分支选择语句,用于在多种情况中选择一种情况,执行某一部分语句。switch语句的主要特点是可以根据表达式的值来选择执行的分支,且可以使用break语句来退出switch结构。 ...

    Java语言switch语句的编写

    switch 语句的写法 简单的一个代码,简述java语言switch、语句的编写

    c语言程序设计 switch语句

    c语言程序设计简单的switch语句的用法

    switch语句通过用户输入的年龄判断年龄段并输出

    javascript,switch语句,判断年龄段

Global site tag (gtag.js) - Google Analytics