java学习笔记2(if switch)

96 阅读2分钟

if语句格式

  1. if (关系表达式) {
    语句体;
    }
  2. if (关系表达式) {
    语句体1;
    } else {
    语句体2;
    }
  3. if (关系表达式1) {
    语句体1;
    } else if (关系表达式2) {
    语句体2;
    }

    else {
    语句体n+1;
    }

考试奖励if小练习

需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩,送他不同的礼物,假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。

95~100 自行车一辆

90~94 游乐场玩一天

80 ~ 89 变形金刚一个

80 以下 胖揍一顿

分析:

①小明的考试成绩未知,可以使用键盘录入的方式获取值

②由于奖励种类较多,属于多种判断,采用if...else...if格式实现

③为每种判断设置对应的条件

④为每种判断设置对应的奖励

package come.itheima.practice;

import java.util.Scanner;

public class p2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入小明成绩");
        int score = sc.nextInt();
        if(score >= 0 && score <= 100) {
            if (score >= 95 && score <= 100) {
                System.out.println("奖励自行车一辆");
            } else if (score >= 90 && score <= 94) {
                System.out.println("奖励游乐园玩一天");
            } else if (score >= 80 && score <= 89) {
                System.out.println("奖励变形金刚一个");
            } else {
                System.out.println("胖揍一顿");
            }
        }else{
            System.out.println("输入的成绩无效");
        }
    }
}

switch语句

switch (表达式) {
case 1:
语句体1;
break;
case 2:
语句体2;
break;

default:
语句体n+1;
break;
}

  • default可以放在任意位置,也可以省略
  • 不写break会引发case穿透现象

switch在JDK12的新特性:
switch (表达式) {
case 1 -> 语句体1;
case 2 ->{
语句体2;
语句体2;
}

default:  -> 语句体n;
break;
}

休息日和工作日switch小练习

需求:键盘录入星期数,输出工作日或者休息日。
(1-5) 工作日,(6-7)休息日。

package come.itheima.Test;

import java.util.Scanner;

public class Test10 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请录入星期");
        int week = sc.nextInt();
        switch (week){
        	case 1:
                case 2:
    		case 3:
    		case 4:
    		case 5:
        		System.out.println("工作日");
        		break;
    		case 6:
    		case 7:
        		System.out.println("休息日");
        		break;
    		default:
        		System.out.println("没有这个星期");
        		break;
		}
    }
}

利用JDK12简化代码书写:

package come.itheima.Test;

import java.util.Scanner;

public class Test10 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请录入星期");
        int week = sc.nextInt();
        switch (week){
            case 1, 2, 3, 4, 5 -> {
                System.out.println("工作日");
                System.out.println("是工作日");
            }
            case 6, 7 -> System.out.println("休息日");
            default -> System.out.println("没有这个星期");
        }
    }
}

引用

www.bilibili.com/video/BV17F… Java学习笔记2(if switch)_看星星1的博客-CSDN博客

以上内容仅作为个人学习笔记,无商业行为。