什么是分支结构?
基于条件执行的语句
1条路:if结构
1 ) 语法 :if ( boolean ){语句块 ------------- 基于条件执行的语句}2 ) 执行过程 :判断 boolean 的值 :若为 true ,则执行语句块 ( 整个结束 )若为 false ,则直接结束//1) 偶数的判断 :int num = 6 ;if ( num % 2 == 0 ){ // 带数 (6,5)System . out . println ( num + " 是偶数 " );}System . out . println ( " 继续执行 ..." );//1) 满 500 打 8 折double price = 300.0 ; // 消费金额if ( price >= 500 ){ // 满 500 带数 (600.0,300.0)price = price * 0.8 ; // 打 8 折}System . out . println ( " 最终结算金额为 :" + price );
2条路:if else结构
1 ) 语法 :if ( boolean ){语句块1} else {语句块2}2 ) 执行过程 :判断 boolean 的值 :若为 true ,则执行语句块 1 ( 整个结束 )若为 false ,则执行语句块 2 ( 整个结束 )3 ) 说明 :语句块 1 和语句块 2 ,必走其中之一 ---------- 2 选 1//1) 偶数、奇数的判断 : int num = 5 ; // 带数 (6,5)if ( num % 2 == 0 ){System . out . println ( num + " 是偶数 " );} else {System . out . println ( num + " 是奇数 " );}System . out . println ( " 继续执行 ..." );//2) 满 500 打 8 折,不满 500 打 9 折 :double price = 300.0 ; // 带数 (600.0,300.0)if ( price >= 500 ){price = price * 0.8 ;} else {price = price * 0.9 ;}System . out . println ( " 最终结算金额为 :" + price );
多条路:if ...else if
1 ) 语法 :if ( boolean - 1 ){语句块1} else if ( boolean - 2 ){语句块2} else if ( boolean - 3 ){语句块3} else {语句块4}2 ) 执行过程 :判断 boolean - 1 ,若为 true 则执行语句块 1 ( 结束 ) ,若为 false 则再判断 boolean - 2 ,若为 true 则执行语句块 2 ( 结束 ) ,若为 false 则再判断 boolean - 3 ,若为 true 则执行语句块 3 ( 结束 ) ,若为 false 则执行语句块 4 ( 结束 )3 ) 说明 :语句块 1 / 2 / 3 / 4 ,必走其中之一 ------- 多选 1package day04 ;import java . util . Scanner ;// 成绩等级判断public class ScoreLevel {public static void main ( String [] args ) {Scanner scan = new Scanner ( System . in );System . out . println ( " 请输入成绩 :" );double score = scan . nextDouble ();// 带数 (888,-45,95,85,65,40)if ( score < 0 || score > 100 ){System . out . println ( " 成绩不合法 " );} else if ( score >= 90 ){ // 成绩合法System . out . println ( "A- 优秀 " );} else if ( score >= 80 ){System . out . println ( "B- 良好 " );} else if ( score >= 60 ){System . out . println ( "C- 中等 " );} else {System . out . println ( "D- 不及格 " ); }}}
switch case
package day04 ;import java . util . Scanner ;// 命令解析程序public class CommandBySwitch {public static void main ( String [] args ) {Scanner scan = new Scanner ( System . in );System . out . println ( " 请选择功能 : 1. 存款 2. 取款 3. 查询余额 4. 退卡 " );int command = scan . nextInt ();switch ( command ){case 1 :System . out . println ( " 存款操作 ..." );break ;case 2 :System . out . println ( " 取款操作 ..." );break ;case 3 :System . out . println ( " 查询余额操作 ..." );break ;case 4 :System . out . println ( " 退卡操作 ..." );break ;default :System . out . println ( " 输入错误 " );}}}
switch...case 结构:
优点:效率高、结构清晰
缺点:只能对整数判断相等
break :跳出 switch
面试题: switch 后数据的类型可以为: byte,short,char,int,String, 枚举类型
补充:
任何复杂的程序逻辑都可以通过三种结构来实现:
顺序结构:从上往下逐行执行,每句必走
分支结构:有条件的执行某语句,并非每句必走
循环结构:
版权声明:本文为weixin_70634087原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。