Chapter4 Java流程控制之选择结构

Lecture1 流程控制概述

  • 流程控制语句种类:顺序、选择、循环;选择结构–if结构、if-else结构、多重if结构、嵌套if结构、switch结构;循环结构–while循环、do-whiile循环、for循环、循环嵌套

Lecture2 多重if结构与嵌套if结构

  • 多重if结构

例子:

/**
 * 使用多重if结构进行成绩判断:
 *
 * 成绩大于等于90分,输出“优”
 * 成绩大于等于80分且小于90分,输出“良”
 * 成绩大于等于60分且小于80分,输出“中”
 * 成绩小于60分,输出“不及格”
 */
import java.util.Scanner;

public class ScoreAccess {
    public static void main(String[] args) {
        System.out.println("请输入成绩:");
        Scanner sc = new Scanner(System.in);
        int score = sc.nextInt();

        if (score >= 90) {
            System.out.println("优");
        } else if (score >= 80) {   //相当于((score >= 80) & (score < 90))
            System.out.println("良");
        } else if (score >= 60) {
            System.out.println("中");
        } else {
            System.out.println("不及格");
        }
    }
}
  • 嵌套if结构:将整个if块插入另一个if块中;语法格式与例子:
//语法格式
if(表达式1)
  if(表达式2)
    if(表达式3)
      语句;
else
  语句;

//例子:从键盘输入两个整数,,判断并输出它们之间的关系(大于、等于或小于)
import java.util.Scanner;

public class IntCompare {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入x的值:");
        int x = sc.nextInt();
        System.out.println("请输入y的值:");
        int y = sc.nextInt();

        if (x != y) {
            if (x > y) {
                System.out.println("x大于y");
            } else {
                System.out.println("x小于y");
            }
        } else {
            System.out.println("x等于y");
        }
    }

Lecture3 switch结构

  • if结构和switch结构的区别:if结构–判断条件是布尔类型,判断条件是一个范围;switch结构–判断条件是常量值
  • switch结构(又称为多路选择结构)语法格式:
switch(表达式){
  case 常量表达式1: 
           语句1;
           break;  //可省略
  case 常量表达式2: 
           语句2;
           break;  //可省略
  ……
  case 常量表达式n: 
           语句n;
           break;  //可省略
  default:   //可省略
           语句3; 
}

Tips:JDK7.0以后表达式的值除了可以是基本数据类型的byte、short、int和char以外,还可以是String类型

  • switch结构案例:

案例一:

import java.util.Scanner;

/**
 * 使用switch结构,从键盘输入1-7之间的任意数字,分别输出对应星期几
 * 例如:输入1,输出星期一
 */

public class SwitchWeek {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入1-7之间的数字:");
        int week = sc.nextInt();
        switch (week) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期日");
                break;
            default:
                System.out.println("输入错误");
        }
    }
}

案例二:

import java.util.Scanner;

/**
 * 使用switch结构,从键盘输入对应星期的英文单词,分别输出对应星期几
 * 例如:输入"Monday",输出"星期一"
 */

public class SwitchWeek_2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入对应星期的英文单词:");
        String week = sc.next();

        week = week.toLowerCase();//将字符串的内容全部转换为小写

        switch (week) {
            case "monday":
                System.out.println("星期一");
                break;
            case "tuesday":
                System.out.println("星期二");
                break;
            case "wednesday":
                System.out.println("星期三");
                break;
            case "thursday":
                System.out.println("星期四");
                break;
            case "friday":
                System.out.println("星期五");
                break;
            case "saturday":
                System.out.println("星期六");
                break;
            case "sunday":
                System.out.println("星期日");
                break;
            default:
                System.out.println("输入错误");
        }
    }
}
    原文作者:董先森
    原文地址: https://segmentfault.com/a/1190000013191298
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞