JAVA(选择结构--if语句)

1,选择结构的分类

  • if语句

  • switch语句

 

2,if语句的格式1: 

       if(比较表达式) {

            语句体;

        }

  • 执行流程:

    • 先计算比较表达式的值,看其返回值是true还是false。

    • 如果是true,就执行语句体;

    • 如果是false,就不执行语句体;

  • 注意事项

    • 比较表达式无论简单还是复杂,结果必须是boolean类型

    • if语句控制的语句体如果是一条语句,大括号可以省略;

    • 如果是多条语句,就不能省略。建议永远不要省略。

    • 一般来说:有左大括号就没有分号,有分号就没有左大括号

class Demo1_If {

    public static void main(String[] args) {

        int age = 17;

        if (age >= 18) {

            System.out.println("可以浏览本网站");

            //int x = 10;                是两句话,int x声明是一句,x = 10 赋值是一句

        }

        System.out.println("完了");

    }

}

3,if语句的格式2

    if(比较表达式) {

            语句体1;

        }else {

            语句体2;

        }

  • 执行流程:

    • 首先计算比较表达式的值,看其返回值是true还是false。

    • 如果是true,就执行语句体1;

    • 如果是false,就执行语句体2;

 

  • 注意事项:else后面是没有比较表达式的,只有if后面有。

 

【1】案例

  • 获取两个数据中较大的值

class Demo3_If {

    public static void main(String[] args) {

   、

        //获取两个数据中较大的值

        int x = 10;

        int y = 20;

        int z;

        if (x > y) {

            z = x;

        }else {

            z = y;

        }

        System.out.println(z);

    }

}
  • 判断一个数据是奇数还是偶数,并输出是奇数还是偶数

class Demo3_If {

    public static void main(String[] args) {



        //判断一个数据是奇数还是偶数,并输出是奇数还是偶数

        int num = 11;

        if (num % 2 == 0) {

            System.out.println(num + "是一个偶数");

        }else {

            System.out.println(num + "是一个奇数");

        }

    }

}

 

【2】if语句的格式2和三元的相互转换

  • if语句和三元运算符完成同一个效果

class Demo4_If {

    public static void main(String[] args) {

       //if控制语句

        int x = 10;

        int y = 20;

        int z;



        if (x > y) {

            //z = x;

            System.out.println(x + "是最大值");

        }else {

            //z = y;

            System.out.println(y + "是最大值");

        }





        //System.out.println(z);



        //三元运算符

        int a = 20;

        int b = 30;

        int c = (a > b)? a : b;

    }

}
  • 三元运算符实现的,都可以采用if语句实现。反之不成立。

  • 什么时候if语句实现不能用三元改进呢?

    • 三元运算符,没有if else 表达的全面。 

    • 当if语句控制的操作是一个输出语句的时候就不能。

    • 为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。

 

 

4,选择结构if语句格式3 

       if(比较表达式1) {

            语句体1;

        }else if(比较表达式2) {

            语句体2;

        }else if(比较表达式3) {

            语句体3;

        }

        ...

        else {

            语句体n+1;  一般不要省略,用来提示状态意外的状况。

        }
  • 执行流程:

    • 首先计算比较表达式1看其返回值是true还是false,

    • 如果是true,就执行语句体1,if语句结束。

    • 如果是false,接着计算比较表达式2看其返回值是true还是false,

    • 如果是true,就执行语句体2,if语句结束。

    • 如果是false,接着计算比较表达式3看其返回值是true还是false,

    • 如果都是false,就执行语句体n+1。

  • 注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示

class Demo5_If {

    public static void main(String[] args) {

        int x = 2;

        if (x == 1) {

            System.out.println("男厕所欢迎您");

        }else if (x == 0) {

            System.out.println("女厕所欢迎您");

        }else {

            System.out.println("无法识别您的性别");

        }

    }

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兴帅_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值