Java中的选择结构

时间:2023-03-10 06:28:12
Java中的选择结构

1.if选择结构

  if选择结构是根据条件判断之后再做处理的一种语法结构

  语法:

if(条件){
代码块 //条件成立之后要执行的代码,可以是一条语句,也可以是一组语句
}

Java中的选择结构

  if后小括号里的条件是一个表达式,而且表达式的值必须为ture 或 false。

1.1使用基本的if选择结构

  

import java.util.Scanner;
public void GetPrize{
Scanner input = new Scanner(System.in);
System.out.print("请输入成绩");
int score = input.nextInt();
if(socre > 98){
System.out.println("考的不错,奖励");
}
}

  运行结果:请输入成绩:100

       考的不错,奖励

1.2使用复杂条件下的if选择结构

  常用的逻辑运算符

  Java中的选择结构

   程序:如果Java成绩大于98分,而音乐成绩大于80分,则奖励;如果Java成绩等于100分,音乐成绩大于70分,也奖励

 public class GetPrize2(){
public static void main(String[] args){
int javaScore = 100;
int muicScore = 72;
if((javaScore > 98 && muicScore > 80) || (javaScore == 100 && muicScore > 70)){
System.out.println("考的不错,奖励");
  }
  }
  }

  运行结果:考的不错,奖励

1.3使用if-else选择结构

  

if(条件){
//代码块1
}else{
//代码块2
}

  if-else结构流程图

  Java中的选择结构

  程序:如果Java成绩大于98,奖励;否则继续编写代码

 public class SimpieIf{
2   public static void main(String[] args){
3     int score = 91;
4     if(score > 91){
      System.out.println("考的不错,奖励");
    }else{
      System.out.println("继续编写代码吧");
    }
  }
}

  运行结果:继续编写代码吧。

1.4多重if选择结构

  语法:

if(条件1){
  //代码块1
}else if(条件2){
  //代码块2
}else{
  //代码块3
}

  多重if选择结构流程图

 Java中的选择结构

  1)else if 可以有多个或者没有,有几个else if块完全取决于需要

  2)else 块最多有一个或没有,else块必须放在else if块之后

  程序:对学生的成绩进行评测,成绩>=80为良好,成绩>=60为中等,成绩<60为差

 public class ScoreAssess{
  public static void main(String[] args){
    int score = 70;
    if(score >= 80){
5       System.out.println("良好");
    }else if(score >= 60){
      System.out.println("中等");
    }else{
      System.out.println("差");
    }
  }
}

  程序运行结果:中等

1.5嵌套if选择结构

  语法:

if(条件1){
  if(条件2){
    //代码块1
  }else{
    //代码块2
  }
}else{
  //代码块3
}

  嵌套if结构流程图

Java中的选择结构

  程序:学校举行运动会,百米赛跑成绩在10s内的有资格进入决赛,根据性别分为男子组和女子组

 import java.util.*;
public class Runing{
  public static void main(String[] args){
    Scanner input = new Scanner(System.in);
    System.out.print("请输入比赛成绩(s):");
    double score = input.nextDouble();
    System.out.print("请输入性别:");
    String gender = input.next();
    if(score < 10){
10      if(gender.equals("男")){
        System.out.print("进入男子组决赛");
      }else if(gender.equals("女")){
        System.out.print("进入女子组决赛");
      }
    }else{
      System.out.print("淘汰");
    }
  }
}

  运行结果:请输入比赛成绩(s):8

       请输入性别: 男

       进入男子组决赛

  注意:1)只有当满足外层if选择结构的条件时,才会判断内层if的条件

     2)else 总是与他前面最近的缺少 else 的那个 if 相配对

2.switch选择结构

  语法:

switch(表达式){
case 常量1:
//代码块1;
break;
case 常量2:
//代码块2;
break;
... ...
default:
//代码块n;
break;
}

  1)JDK 1.7后,switch 语句小括号里可以是 int、short、byte、char、枚举、String类型表达式

  2)case 后必须是一个常量,数据类型与switch后表达式的值相同,通常是一个固定值,case块可以有多个,顺序可以改变,但每个case后的值必须各不相同

  3)default:其他情况都不满足时执行default。default后要紧跟冒号,default跟case的顺序可以变动,但通常default块放在结尾,也可以省略。

  程序:参加计算机编程大赛:

       如果获得第一名,奖励参加下列营;

       如果获得第二名,奖励惠普笔记本电脑一台;

      如果获得第三名,奖励移动硬盘一个;

      否则没有奖励。

 public calss Compete{
  public static void main(String[] args){
    int rank = 1;
    switch(rank){
      case 1:
        System.out.println("参加夏令营");
        break;
      case 2:
        System.out.println("惠普笔记本");
        break;
      case 3:
        System.out.println("移动硬盘");
        break;
      default:
        System.out.println("没有奖励");
        break;
    }
  }
}

  运行结果:参加夏令营

3.选择结构总结

  1)基本if选择结构:可以处理单一或组合条件的情况。

  2)if-else选择结构:可以处理简单的条件分支情况。

  3)多重if选择结构:可以处理复杂的条件分支情况。多重if选择结构在解决需要判断的条件是连续的区间时有很大的优势。

  4)嵌套if选择结构:这种结构一般用于复杂的流程控制中。

  5)switch选择结构:当需要多重分支,并且条件判断是等值判断的情况下,使用switch选择结构代替多重if选择结构会更简单,代码结构更清晰易读