码迷,mamicode.com
首页 > 其他好文 > 详细

程序流程控制

时间:2019-12-07 15:58:06      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:div   相互转换   alt   相互   而且   不执行   inf   意思   src   

顺序结构

  程序从上到下逐行地执行,中间没有任何判断和跳转。

技术图片

 

 

 

分支语句

  1、if-else语句

  if语句的三种格式

  if语句第一种格式:(适合一种判断)

  技术图片

 

if(关系表达式) {

语句体;

}

  首先判断关系表达式看其结果是true还是false:如果是true就执行语句体;如果是false就不执行语句体。

技术图片

 

 

2、if语句第二种格式:(适合两种判断)

if(关系表达式) {

语句体1;

}else {

语句体2;

}

  首先判断关系表达式看其结果是true还是false:如果是true就执行语句体1;如果是false就执行语句体2。

技术图片

 

 三元运算符,它根据比较判断后,给出的也是两个结果,所以,这种情况和if语句的第二种格式很相似,他们在某些情况下应该是可以相互转换的。

3、if语句第三种格式:(适合多种判断)

if语句第三种格式:
if(关系表达式1) {
             语句体1;
    }else  if (关系表达式2) {
             语句体2;
    }
    ...
    ...
    else {
             语句体n+1;
    }

  技术图片

 

 需要注意的是,所有的语句体中,只执行一个。

三、选择结构的switch语句:

  switch语句格式

switch(表达式) {
          case 值1:
            语句体1;
            break;
            case 值2:
            语句体2;
            break;
            ...
            ...
            default:    
            语句体n+1;
            break;
} 

  switch表示这是switch语句

  表达式的取值:byte,short,int,char(JDK5以后可以是枚举,JDK7以后可以是String)(这句话可能出面试题)

  case后面跟的是要和表达式进行比较的值

  语句体部分可以是一条或多条语句

  break表示中断,结束的意思,可以结束switch语句

  default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

技术图片

 

 

(1)case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的

(2)default可以省略吗?

可以省略。一般不建议。除非判断的值是固定的(也就是说所有可能的情况都已经列在case中了)

(3)break可以省略吗?

可以省略,一般不建议。否则结果可能不是你想要的,会出现一个现象:case穿透。

(4)default的位置一定要在最后吗?

可以出现在switch语句任意位置。

(5)switch语句的结束条件:

  • 情况a:遇到break就结束,而不是遇到default就结束。
  • 情况b:执行到程序的末尾就结束

2、if和switch各自使用的场景:

在做判断的时候,我们有两种选择,if语句和switch语句,那么,我们到底该如何选择使用那种语句呢?

if语句使用场景:

  • 针对结果是boolean类型的判断
  • 针对一个范围的判断
  • 针对几个常量值的判断

switch语句使用场景:

  • 针对几个常量值的判断,常量的值符合byte、short、int、char这四种类型,使用switch效率会更高。

程序流程控制

标签:div   相互转换   alt   相互   而且   不执行   inf   意思   src   

原文地址:https://www.cnblogs.com/fangfangfanga/p/12001904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!