Java之判断语句

判断语句概念

判断语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立,根据判断结果执行不同的操作,从而改变代码的执行顺序,实现更多的功能。

判断语句

判断语句if的三种格式

if语句第一种格式: 单if

格式:

执行流程

  • 首先判断关系表达式看其结果是true还是false
  • 如果是true就执行语句体
  • 如果是false就不执行语句体

代码执行如下图所示

 代码举例

package demo02_JudgmentStatement;

//通过单if语句判断2个变量是否相等
public class Demo01If {
    public static void main(String[] args) {
        //定义2 个变量
        int a = 313;
        int b = 33;
        //  a == b 是条件表达式
        if (a == b) {
            //语句体
            System.out.println("a == b ");
        }
        int c = 313;
        if (a == c) {
            System.out.println("a等于c");
        }
        // 单if语句之后执行的代码
        System.out.println("其他语句");
    }
}

代码执行后的结果

if语句第二种格式: if...else

格式:

执行流程

  • 首先判断关系表达式看其结果是true还是false
  • 如果是true就执行语句体1
  • 如果是false就执行语句体2

执行流程图

 代码举例

package demo02_JudgmentStatement;

//通过单if..else语句判断给定的数据是奇数还是偶数
public class Demo02IfElse {
    public static void main(String[] args) {
        //定义要测试的变量
        int i = 888;
        //i% 2 == 0 是条件表达式
        if (i % 2 == 0) {
            //语句体1
            System.out.println("偶数");
        } else {
            //语句体2
            System.out.println("奇数");
        }
    }
}

代码执行后的结果

if语句第三种格式: if...else if ...else

格式:

执行流程

  • 首先判断关系表达式1看其结果是true还是false
  • 如果是true就执行语句体1,剩下的都不在执行。
  • 如果是false就继续判断关系表达式2看其结果是true还是false
  • 如果是true就执行语句体2,剩下的都不在执行。
  • 如果是false就继续判断关系表达式…看其结果是true还是false
  • 如果没有任何关系表达式为true,就执行语句体n+1。

执行流程图

 代码举例

package demo02_JudgmentStatement;

/*
*通过if... else if...else  指定考试成绩,判断学生等级  规则如下
90-100 优秀
80-89 好
70-79 良
60-69 及格
60以下 不及格
* */
class Demo03IfElsePractise {
    public static void main(String[] args) {
        int i = 80;
        if (i > 100 || i < 0) {
            System.out.println("成绩错误哦");
        } else if (i >= 90 && i < 100) {
            System.out.println("优");
        } else if (i >= 80 && i < 90) {
            System.out.println("良");
        } else if (i >= 70 && i < 80) {
            System.out.println("一般");
        } else if (i >= 60 && i < 70) {
            System.out.println("及格");
        } else {
            System.out.println("不及格");
        }
    }

}

代码执行后的结果

if语句和三元运算符的互换

在某些简单的应用中,if语句是可以和三元运算符互换使用的。
package demo02_JudgmentStatement;

public class Demo04exchange {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        //定义变量,保存a和b的较大值
        int c;
        if (a > b) {
            c = a;
        } else {
            c = b;
        }
        System.out.println("最大值是:" + c);
        //可以上述功能改写为三元运算符形式
        c = a > b ? a : b;
        System.out.print("最大值是:" + c);
    }
}

代码执行后的结果

猜你喜欢

转载自www.cnblogs.com/wurengen/p/11863817.html
今日推荐