码迷,mamicode.com
首页 > 编程语言 > 详细

【Java流程控制】分支结构,if语句、switch语句的用法与区别

时间:2021-01-05 11:44:06      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:变量   执行流程   alt   区别   效率   逻辑   jpg   分支语句   bre   

选择结构

在程序设计时,经常需要使用选择结构在程序中完成逻辑判断和选择功能,这就需要使用到选择语句。

Java中的选择语句包括if语句和switch语句。

选择语句用来控制选择结构,对选择条件进行判断,并根据判断结果选择要执行的程序语句,改变程序执行流程。

if选择语句

if单分支选择语句

技术图片
if(条件表达式){
一条或多条语句;
}
后续语句;

或者

//if或者else后如果只有一条语句可以省略大括号
if(条件表达式)  一条语句;
后续语句;

if语句执行的过程如下:

  • 对if后面括号里的条件表达式进行判断;
  • 如果条件表达式的值为true,就执行表达式后面的语句或后面大括号里的多条语句;
  • 如果条件表达式的值为false,则跳过if语句,执行后续语句

If else双分支选择结构

技术图片
if(条件表达式){
    语句块1;
}else{
    语句块 2;
}

if-else语句执行的过程如下:

  • 对if后面括号里的条件表达式进行判断;
  • 如果条件表达式的值true,就执行语句块1;
  • 如果条件表达式的值为false,就执行语句块2

if-else-if多分支选择语句

技术图片
if(条件表达式1){
    语句块1;
}else if(条件表达式2){
    语句块1;
}
. . .
else(条件表达式n){
    语句块n;
}

if-else-if语句执行的过程如下:

  • 对if后面括号里的条件表达式进行判断;
  • 如果条件表达式的值为true,就执行语句块1;
  • 否则,对条件表达式2进行判断。如果条件表达式的值为true,就执行语句块2
  • 否则,以此类推;
  • 如果所有条件表达式的值都为false,最后执行语句块n。

switch语句

当选择结构的分支越多时,if-else-if语句就会变得越来越难懂。Java提供了另一种多分支语句——switch语句。switch语句是多分支的开关语句。

技术图片
switch(表达式){
    case常量表达式1:语句组1;
 break;
    case常量表达式1:语句组1;
 break;
…
    case常量表达式1:语句组1;
 break;
    default:语句块n
}

switch语句执行的过程如下:

  • 将switch表达式的值与各个case后面的常量表达式的值一一进行比较;
  • 当表达式的值与某个case分支的值相等时,程序执行从case分支开始的语句组;
  • 如果没有任何一个case分支的值与switch表达式的值相匹配,并且switch语句含有default分支语句,则程序执行default分支中的语句组;
  • 直到遇到break语句或右大括号,结束switch语句。

总结

从功能上来讲,if语句和switch语句都是多分支选择语句,在通常情况下,对于多分支选择结构,使用if语句和使用switch语句从作用上讲是相同的。但是在实际编写程序时,一般遵循下面的使用原则。

  • 如果分支的层次不超过三层,那么通常使用if-else-if语句;否则,使用switch语句。
  • 如果条件判断语句是对一个变量是否属于一个范围进行判断,如“a>60 && a<89”,这时要使用if-else-if语句。
  • 如果是对同一个变量的不同值做条件判断,既可以使用if-else-if语句,也可以使用switch语句。但建议优先使用switch语句,其执行效率相对高一些。

【Java流程控制】分支结构,if语句、switch语句的用法与区别

标签:变量   执行流程   alt   区别   效率   逻辑   jpg   分支语句   bre   

原文地址:https://www.cnblogs.com/yazhouasu/p/14223551.html

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