day11 顺序结构与if选择结构

顺序结构

  • Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行
  • 顺序结构是最简单的算法结构。
  • 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构

例:

package com.wangchuan.struct;

public class SequenceDemo {
    public static void main(String[] args) {
        System.out.println("hello1");
        System.out.println("hello2");
        System.out.println("hello3");
        System.out.println("hello4");
    }
}

选择结构

  • if单选择结构
  • if双选择结构
  • if多选择结构
  • 嵌套的if结构
  • switch多选结构

if单选择结构

  • 我们很多时候需要取判断一个东西是否可行,然后我们去执行,这样一个过程在程序中用if语句来表示
  • 语法:
if(布尔表达式){
    //如果布尔表达式为true将执行的语句
}

例:

package com.wangchuan.struct;

import java.util.Scanner;

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

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

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

        System.out.println("end");

        scanner.close();


    }
}

if双选择结构

  • 那现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发,这样的需求用一个就搞不定了,我们需要有两个判断,需要一个双选择结构,所以就有了if-else结构。
  • 语法:
if(布尔表达式){
    //如果布尔表达式的值为true
}else{
    //如果布尔表达式的值为false
}

例:

package com.wangchuan.struct;

import java.util.Scanner;

public class ifDemo02 {
    public static void main(String[] args) {
        //考试分数大于等于60就及格,小于60分就不及格。
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入考试分数");
        float score = scanner.nextFloat();
        
        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执行代码
}

例:

package com.wangchuan.struct;

import java.util.Scanner;

public class ifDemo03 {
    public static void main(String[] args) {
        //请输入分数
        System.out.println("请输入分数:");
        Scanner scanner = new Scanner(System.in);
        int score = scanner.nextInt();
		/*
		if 语句至多有一个else语句,else语句在所有的else if语句之后。
		if 语句可以有若干个else if 语句,他们必须在else语句之前。
		一但其中一个else if 语句检测为true。其他的else if 以及else 语句都将跳过执行。
		*/
        
        if (90 <= score && score <= 100){
            System.out.println("评A等级");
        }else if(80 <= score && score < 90){
            System.out.println("评B等级");
        }else if(70 <= score && score < 80){
            System.out.println("评C等级");
        }else if(60 <= score && score < 70){
            System.out.println("评D等级");
        }else if(0 <= score && score < 60){
            System.out.println("不及格");
        }else{
            System.out.println("输入成绩不合法");
        }

        scanner.close();
    }
}

嵌套的if结构

  • 使用嵌套的if...else语句是合法的。也就是说你可以在另外一个if或者else if语句中使用if或者else if 语句。你可以像if语句一样嵌套else if...else。
  • 语法:
if(布尔表达式1){
    ////如果布尔表达式1的值为true执行代码
    if(布尔表达式2){
        ////如果布尔表达式2的值为true执行代码
    }
}
  • 思考?我们需要寻找一个数,在1-100之间
posted @ 2021-03-05 23:00  圈圈子  阅读(85)  评论(0)    收藏  举报