Day05-Java入门语言基础之分支结构

什么是分支结构?

基于条件执行的语句 

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 ,必走其中之一 ------- 多选 1
package 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版权协议,转载请附上原文出处链接和本声明。