分支结构

<small>

分支结构

分支:有选择性的执行其中某一段代码。

java中的代码组成结构,只有三种:
顺序结构、分支结构、循环结构

1)、分支结构两种

a、if-else分支
   ①、if(一条分支可选)  **
    语法:
    if(逻辑判断){
        执行代码块;
    }

    如果逻辑判断为真,执行代码块;

   ②、if-else(两条分支,必定会选一条) **
    语法:
    if(逻辑判断){
        执行代码块1;
    }else{
        执行代码块2;
    }

    如果逻辑判断为真,执行代码块1;
    否则执行代码块2;

   ③、if-else if(多条分支)XX
    语法:
    if(逻辑判断1){
        执行代码块1;
    }else if(逻辑判断2){
        执行代码块2;
    }else if(逻辑判断3){
        执行代码块3;
    }.....

    如果逻辑判断1为真,执行代码块1;
    如果逻辑判断2为真,执行代码块2;
    如果逻辑判断3为真,执行代码块3;
    .....

   ④、if-else if....-else(多条分支,必定会选一条) **
    语法:
    if(逻辑判断1){
        执行代码块1;
    }else if(逻辑判断2){
        执行代码块2;
    }else if(逻辑判断3){
        执行代码块3;
    }.....
    else{
        执行代码块N;
    }
    如果逻辑判断1为真,执行代码块1;
    如果逻辑判断2为真,执行代码块2;
    如果逻辑判断3为真,执行代码块3;
    .....
    如果上述分支都不选,否则执行代码块N;

建议:
if、if-else、if-else if-else为经常用。
分支条件,一定要考虑闭环操作。

练习:
要求控制台输入一个年份,
判断该年份是否为闰年。
控制台输出:XXXX年是闰年(XXXX年不是闰年)。

2)、switch-case分支
    局限性非常大
    语法:
    switch(整型||枚举||jdk1.8以后支持字符串){
        case 情形1:
            执行代码块1;
            break;
        case 情形2:
            执行代码块2;
            break;
        .....
        case 情形N:
            执行代码块N;
            break;
        default:
             以上情形都不满足,执行此代码块;
    }
    ```
>局限性:
    1、判断条件只能是:
        整型||枚举||jdk1.8以后支持字符串
        不可以进行范围判断。
    2、break的使用。
    3、default的使用。

>2、if-else、switch-case分支的比较
    1)、所有的switch-case,都能通过if-else改造。
        但是if-else不能随便改造成switch-case。
    2)、switch-case不能判断范围,if-else可以。
    3)、if-else只选一条分支,switch-case可以实现多选。
4)、switch-case简洁明了,对整型的判断,适当使用。
        if-else使用频率最高。


**5)、if-else与三目运算符有类似之处,
    所有的三目运算符,都可以通过if-else替换。

    逻辑判断 ? 表达式1 : 表达式2;
    如果逻辑判断为真,执行表达式1,
        否则执行表达式2。

    if(逻辑判断){
        执行代码1;
    }else{
        执行代码2;
    }
    如果逻辑判断为真,执行代码1,
        否则执行代码2。

>练习:
        要求控制台输入:年份,月份。
        通过代码判断,控制台输出:
        xxxx年xx月,含有xx天。


    

补充知识点:
1、java.util.Scanner类    
    java.util.Scanner类
       工具类,控制台扫描器。
       用于扫描控制台的输入,并获得输入内容。

    此类非java.lang包下的类,需要导入。

1)、java.util.Scanner类使用步骤
step1:导入
               在第一行的package包路径下导入。
            import java.util.Scanner;
step2:创建Scanner对象
               Scanner sc = new Scanner(System.in);
step3:扫描控制台输入,
            并使用变量存放控制台输入内容。
注意:a、next与nextLine的区别?
            b、类型一定要对应。      
2)、快速导入
        a、单击错误提示
           选择正确的类,双击导入。
b、首先你得知道类名前几个字母。
            Alt + / 快速选择导入。
c、写出完整的类名
            ctrl + shift + o
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容