Java笔记---分支语句

Java笔记---分支语句,第1张

Java笔记---分支语句 1.流程控制

流程控制语句分类:
顺序结构
分支结构 (if,switch)
循环结构 (for,while,do…while)

if语句
格式1:
if(关系表达式){
语句体
}
执行计算关系表达式的值
如果关系表达式的值为true就执行语句体
如果关系表达式的值为false就不执行语句体
继续执行后面的语句内容。


格式2:
if(关系表达式){
语句体1;
}else{
语句体2;
}
先执行计算关系表达式的值
如果关系表达式的值为true就执行语句体1
如果关系表达式的值为false就执行语句体2
继续执行后面的语句内容。

案例:奇偶数
需求:任意给出一个整数,请用程序实现判断该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数。
分析:
1.任给一数据,需要键盘录入,
使用键盘录入功能需要导包
import java.util.Scanner;
创建对象
Scanner sc = new Scanner(System.in);
接收数据
int number = sc.nextInt();
2.判断整数是偶数还是奇数,要分两种情况,使用 if…else结构
if(){

} else (){

}
3.判断是否为偶数,用取余运算符:number % 2 ==0
if(number % 2 ==0){

} else (){

}
4.根据判定情况,在控制台输出对应的内容
if(number % 2 == 0){
System.out.println(number + “是偶数”); //输出数据
}else {
System.out.println(number + “是奇数”); //输出数据
}

import java.util.Scanner;  //导包
public class one {
    public static void main(String[] arges){

        Scanner sc = new Scanner(System.in);  //创建对象

        int number = sc.nextInt();

        if(number % 2 == 0){
            System.out.println(number + "是偶数");  //输出数据
        }else {
            System.out.println(number + "是奇数");  //输出数据
        }

    }
}

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

else{
语句体n+1;
}
先执行计算关系表达式1的值
如果关系表达式的值为true就执行语句体1;如果值为false就计算表达式2的值
如果关系表达式的值为true就执行语句体2;如果值为false就计算表达式3的值

如果没有任何关系表达式为true,就执行语句体n+1。

案例:考试奖励
需求:根据不同成绩,输出不同的礼物。
分析:
1.成绩未知,可以先用键盘录入的方式获取值
import java.util.Scanner; //导包
Scanner sc = new Scanner(System.in); //创建对象
int number = sc.nextInt();
2.由于奖励类型多,用if…else…if格式实现。
3.为每种判断设置对应的条件
4.为每种判断设置对应的奖励

import java.util.Scanner;  //导包
public class one {
    public static void main(String[] arges){

        Scanner sc = new Scanner(System.in);  //创建对象
        System.out.println("请输入成绩:");
        int score = sc.nextInt();    //接受数据

        if(score > 100 || score <0){
            System.out.println("输入的数据有误!!!");
        }else 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("胖揍");
        }

    }
}

注:测试数据时要测试正确数据、错误数据以及边界数据。

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

default:
语句体n+1;
[break;]
}
格式说明:
表达式:取值为byte、short、int、char,JDK5以后可以是枚举,JDK7以后可以是String;
case:以后跟的是要和表达式进行比较的值;
break:表示中断,结束的意思,用来结束switch语句;
default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
执行流程:
1.首先计算表达式的值
2.依次和case后面的值进行比较,如果有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束
3.如果所有的case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后程序结束。

案例:输入一个数,判断周几。

import java.util.Scanner;  //导包
public class one {
    public static void main(String[] arges){

        Scanner sc = new Scanner(System.in);  //创建对象
        System.out.println("请输入星期数:");
        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("输入有误!!!");
        }
      
    }
}

案例:春夏秋冬。
需求:一年有12个月,分属四个季节,输入一个月份判断是哪个季节,并输出。
分析:
1.录入月份,导包,创建,接收。
2.switch语句实现多种情况
3.在每种情况中,输出所对应的季节。

import java.util.Scanner;  //导包
public class one {
    public static void main(String[] arges){

        Scanner sc = new Scanner(System.in);  //创建对象
        System.out.println("请输入月份:");
        int month = sc.nextInt();    //接受数据

        switch (month){
            case 3:           //case穿透
            case 4:
            case 5:
                System.out.println("春季");
                break;
            case 6:
            case 7:
            case 8:
                System.out.println("夏季");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println("秋季");
                break;
            case 12:
            case 1:
            case 2:
                System.out.println("冬季");
                break;
            default:
                System.out.println("输入有误!!!");
        }

    }
}

注:在switch语句中,如果case控制的语句体后面不写break,将出现穿透现象,在不判断下一个case值得情况下,向下运行,知道遇到break,或整个switch语句结束。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5686644.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存