if选择结构

if 单选择结构
  • 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示

  • 语法

    if(布尔表达式){
       //如果布尔表达式的值为true将执行的代码
    }

    逻辑图:

     

     

    实例:

    import java.util.Scanner;

    public class ifDemo01 {
       public static void main(String[] args) {
           Scanner scanner = new Scanner(System.in);

           System.out.println("请输入内容:");
           String a = scanner.nextLine();

           //equals:判断字符是否相等
           if (a.equals("Hello")){
               System.out.println(a);
          }

           System.out.println("End");

           //关闭程序
           scanner.close();
      }
    }

     

     

     

if 双选择结构
  • 那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求用一个if 就搞不定了,我们需要有两个判断,需要有一个双选择结构,所以就有了if-else结构。

  • 语法

    if(布尔表达式){
       //如果布尔表达式的值为true将执行的代码
    }else{
       //如果布尔表达式的值为false将执行的代码
    }

     

逻辑图

 

 

实例:

 import java.util.Scanner;

public class IfDemo02 {
   public static void main(String[] args) {
       //考试分数大于或等于60就是及格,小于60分就是不及格。

       Scanner scanner = new Scanner(System.in);

       System.out.println("请输入成绩:");
       double score = scanner.nextDouble();

       if (score>=60){
           //布尔值为真则输出及格!
           System.out.println("成绩及格!");
      }else {
           //布尔值为假则输出不及格!
           System.out.println("成绩不及格!");
      }

       scanner.close();
  }
}

 

 

if 多选择结构
  • 我们发现刚才的代码不符合实际情况,真是的情况还可能存在ABCD,存在区间多级判断。比如90-100就是A,80-90就是B...等等,在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!

  • 语法:

    if(布尔表达式 1){
       //如果布尔表达式 1的值为true将执行的代码
    }else if(布尔表达式 2){
       //如果布尔表达式 2的值为true将执行的代码
    }else if(布尔表达式 3){
       //如果布尔表达式 3的值为true将执行的代码
    }else{
       //如果以上布尔表达式都不为true将执行的代码
    }

     

逻辑图:

 

 

实例:

import java.util.Scanner;

public class IfDemo03 {

   //考试成绩评价程序
   public static void main(String[] args) {

       /*
       if 语句至少有一个 else 语句,else 语句在所有的 else if 语句之后。
       if 语句可以有若干个 else if 语句,它们必须在 else 语句之前。
       一旦其中一个 else if 语句检测为 true,其他的 else if 以及 else 语句都将跳过执行。
        */

       Scanner scanner = new Scanner(System.in);

       System.out.println("请输入成绩:");
       //程序在等待用户输入
       double score = scanner.nextDouble();

       if (score==100){
           System.out.println("恭喜满分!");

           //&&:逻辑与算
      }else if (score<100 && score>=90) {
           System.out.println("A级");

      }else if (score<90 && score>=80) {
           System.out.println("B级");

      }else if (score<80 && score>=70) {
           System.out.println("C级");

      }else if (score<70 && score>=60) {
           System.out.println("D级");
      }else if (score<60 && score>=0){
           System.out.println("不及格!");
      }else {
           System.out.println("成绩不合法!");
      }

       scanner.close();
  }
}

 

 

嵌套的if 结构
  • 使用嵌套的 if…else 语句是合法的。也就是说你可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。

  • 语法

嵌套的 if…else 语法格式如下:

if(布尔表达式 1){
  ////如果布尔表达式 1的值为true执行代码
  if(布尔表达式 2){
     ////如果布尔表达式 2的值为true执行代码
  }
}

你可以像 if 语句一样嵌套 else if ...else。

 

实例:

import java.util.Scanner;

public class Trip {
   public static void main(String[] args) {
       //出行系统;天气、性别、温度、出行推荐
       Scanner scanner = new Scanner(System.in);
       System.out.println("欢迎使用出行系统");
       System.out.println("天气:雨天请输入1,晴天请输入2");
       System.out.println("性别:男性请输入1,女性请输入2");


       System.out.println("请输入天气:");
       int a = scanner.nextInt();

       System.out.println("请输入性别:");
       int b = scanner.nextInt();

       if (a ==1){
           //System.out.println("雨天");

               if (b==1){
                   System.out.println("带大雨伞");
              } else if (b==2){
                   System.out.println("带小花伞");
              }else {
                   System.out.println("非常抱歉,无法检测您的性别");
              }

      }else if (a==2){
           //System.out.println("晴天");


           System.out.println("请输入当前温度");
           double c = scanner.nextDouble();
           if (c>=28 &&c<=35 ){
               if (b==1){
                   System.out.println("戴墨镜贼帅哟");
              }else if (b==2){
                   System.out.println("擦好防晒霜哟");
              }else {System.out.println("非常抱歉,无法检测您的性别");

              }
          }else if (c>=36 && c<=50){
               System.out.println("太热了,不适合外出");
          }else if (c>=20 && c<=27){
               System.out.println("天气晴朗,温度合适出去逛逛");
          }else if (c>50){
               System.out.println("这么热你还能活得下来么");
          }else if (c>=1 && c<=19){
               System.out.println("出行有点冷,注意保暖!");
          }else {
               System.out.println("冻死你个破该!");
          }
      }else {
           System.out.println("对不起,没有该天气!");
      }




       scanner.close();//关闭程序
  }
}

 

 

 

posted @ 2022-01-13 14:55  小瑭  阅读(194)  评论(0编辑  收藏  举报