判断语句if

判断语句1--if

  • if语句第一种格式: if

格式:

执行流程

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

执行流程图:

代码举例:

import java.util.Scanner;

public class Demo05 {
    public static void main(String[] args) {
        // 获取年龄信息
        Scanner s = new Scanner(System.in);
        System.out.println("请输入您的年龄");
        int age = s.nextInt();
        // 判断表达式是否成立
        if (age > 18) {
            //成立和执行的代码
            System.out.println("可以去网吧上网");
        }
        System.out.println("if语句结束后执行的代码");
    }
}

执行结果

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

格式:

执行流程

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

执行流程图:

代码举例:

import java.util.Scanner;

public class Demo06 {
    public static void main(String[] args) {
        // 获取输入的数字
        Scanner s = new Scanner(System.in);
        System.out.println("请输入数字");
        int age = s.nextInt();
        // 判断给定的数据是奇数还是偶数
        if (age % 2 == 0) {
            System.out.println("偶数");
        } else {
            System.out.println("奇数");
        }
    }
}

执行结果

注意事项:

else后面是没有比较表达式的,只有if后面有

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

格式:

执行流程

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

执行流程图:

需求:

根据输入的考试成绩,判断学生等级
90-100 优秀
80-89 好
70-79 良
60-69 及格
60以下 不及格

代码实现:

import java.util.Scanner;

public class Demo07 {
    public static void main(String[] args) {
        // 获取输入的数字
        Scanner s = new Scanner(System.in);
        System.out.println("请输入score");
        int score = s.nextInt();
        //根据关系表达式执行相应的代码
        if (score < 0 || score > 100) {
            System.out.println("你的成绩是错误的");
        } else if (score >= 90 && score <= 100) {
            System.out.println("你的成绩属于优秀");
        } else if (score >= 80 && score < 90) {
            System.out.println("你的成绩属于好");
        } else if (score >= 70 && score < 80) {
            System.out.println("你的成绩属于良");
        } else if (score >= 60 && score < 70) {
            System.out.println("你的成绩属于及格");
        } else {
            System.out.println("你的成绩属于不及格");
        }
    }
}

执行结果:

注意事项:

  • 比较表达式无论简单还是复杂,结果必须是boolean类型
  • if语句控制的语句体如果是一条语句,大括号可以省略;如果是多条语句,就不能省略。建议永远不要省略。
  • 一般来说:有左大括号就没有分号,有分号就没有左大括号
  • if语句是可以嵌套使用

if语句和三元运算符的区别

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

什么时候if语句实现不能用三元改进呢?
当if语句控制的操作是一个输出语句的时候就不能。为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。

猜你喜欢

转载自www.cnblogs.com/wurengen/p/10833879.html