逻辑运算——分支结构(if...else switch等)

本文介绍了Java中的分支语句,包括简单if分支、if...else分支、多重if分支、嵌套if分支及switch分支的语法与使用细节,并通过具体示例进行说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,流程控制语句---三大结构

顺序结构:编码写下来,就是按照顺序从上到下

分支语句:当流程执行下来的时候就会有多种情况,那么就会产生多种情况,也就是产生多种的分支,就是专门的流程控制语句控制分支

        ① if分支

                简单if分支

                        语法 if(判断条件){满足条件执行的代码}

                if...else分支

         ②switch选择

循环语句

        for循环

        while循环

        do while 循环

二,简单的if分支

        语法:if(逻辑条件){

                        执行

                   }   

 例子:

//导入scanner类
import java.util.scanner

public class Test01{//案例如果 成绩大于90 那么奖励豪华作业一套
	public static viod main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入成绩")
		//输入成绩
		int score = sc.nextInt();
		
		if(score>=90){
			System.out.println("奖励豪华作业一套")
		}
	}
	
}

三,if...else分支

语法:if(逻辑条件){

                        满足逻辑条件执行的条件代码

                }else{

                        不满足逻辑执行条件代码

                        }

 例子:

//引入Scanner类
import java.util.scanner;
public class demo02{
    public static void main(String args){
        //如果一个用户的  用户名位admin 密码为123456
        //就可以跳转到首页 否则还是跳转到登陆页面
        Scanner sc = new Scanner(System.in);//创建Scannner对象
        //输入用户名
        System.out.println("请输入用户名");
        String userName = sc.next();
        System.out.println("请输入用户名密码");
        String userPassword = sc.next();

        if(userName.equals("admin") && userPassword.equals("123456")){
            System.out.println("欢迎"+userName+"进入首页");
        }else{
              System.out.println("请"+userName+"请重新输入");
        }
    }

}

 注意:在Java当中 == 比较的是内存地址,所有在以后的字符串比较当中不要使用== ,应该使用.equals ,基础数据类型,使用的就是==比较

 四,多重if分支

4.1语法

if(逻辑条件){

        满足逻辑条件

}else if(逻辑条件){

        隐藏条件2,不满足1执行的

}else if(逻辑条件){

        不满足条件1 也不满足隐藏条件2执行的代码块

}else{

        不满足以上所有条件的情况下执行代码块

}

import java.util.Scanner;
public class demo{
    public static void main(String[] args){
         /*
            根据手上的余额选择购买的手机品牌
                如大于10000买个苹果    
                如果大于8000买个华为
                大于5000  买个小米
                大于3000 买个诺基亚
                否则 去公共电话


         */
        
        System.out.println("请输入你余额");
        double money = sc.nextDouble();
        if(money>=10000){

                        System.out.println("你可以买iphone14proMax");
            }else if(money>=8000){

                        System.out.println("你可以买华为");
            }else if(money>=5000){

                        System.out.println("你可以买小米12");
            }else if(money>=3000){
                        System.out.println("你可以买个诺基亚");

            }else{

                    System.out.println("没钱买就去公共电话厅")
            }


    }


}

 五,嵌套if分支

推荐if分支

        语法:

                if(逻辑条件1){

                                        if(逻辑条件2){

                                                满足条件1也满足条件2所执行的代码

                                                                }else{

                                                                        满足条件1不满足满足条件2所执行的代码

                                                                        }

                                         }else{

                                                        不满足条件1所执行的代码(与条件2没有任何关系)

                                                }

 

import java.util.Scanner;
public class demo04{
    public static void main(String[] args){
        
        //案例 学校举行跑步的比赛 如果成绩在15s以内可以进入决赛
        //满足进了决赛的人 男生进入男子组反之女生进入女子组


        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的比赛完成时间");
        
        int score = sc.nextInt();
        
        if(score<15){
                        System.out.println("请输入你的性别");
                        String sex = sc.next();
                        if(sex.equals("男")){
                                                System.out.println("恭喜你进入男子组决赛");
                                            }else{
                                                    System.out.println("恭喜你进入女子组决赛");
                                                  }
                   
                    }else{
                                System.out.println("很遗憾你被淘汰了");
                            }
    }

}

六,分支语句的细节

①  注意:在Java当中 == 比较的是内存地址,所有在以后的字符串比较当中不要使用== ,应该使用.equals ,基础数据类型,使用的就是==比较

②注意:在if分支当中,大括号可以省略不写,但是不写大括号那么这个分支只能控制一行代码

 ③多重if当中,要尽量将苛刻的条件写在前面

 七,switch分支

        7.1switch的使用

        选择分支结构:

                switch当中的值:byte short char int String 枚举类型

                switch(值){

                        case 值1:

                                switch中的值与值1相等时执行的代码

                                break;

                        

                        case 值2:

                                switch中的值与值2相等时执行的代码

                                break;

                         //同上无长度限制

                }

 例子:

import java.util.Scanner
public class demo{
    public static void main(String[] args){
        
        /*
            案例:
            选择1:查询操作
            选择2:增加操作
            选择3:删除操作
            选择4:修改操作
            选择5:退出系统
            选择其他:提示输入有误
            
        */
        System.out.println("请输入你的选择");
        Scanner sc = new Scanner(System.in);
        int option = sc.nextInt();
        switch(option){
                    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;

                    default:
                    System.out.println("你的输入有误,请重新输入");
                    break;
                
                }


    }
}

7.2switch分支使用细节

switch分支使用细节

        1,在使用当中值的类型:byte int short long char String 枚举类型(这是常用的)等

        2,在使用switch分支当中 case的值不运行重复

        3,在switch当中break就表示结束当前switch语句

                break可以省略不写,但是不写的话switch会一直往下执行 直到遇到break

        4,switch与多重if的区别

        在多重if当中可以做关系运算,在switch当中只能做等值判断

package com.qfedu;
import java.util.Scanner;
public class wend{
    public static void main(String[] args){
        System.out.println("请输入你的选择");
        Scanner sc = new Scanner(System.in);
        String option = sc.next();
        switch(option){
            case "A":
            case "a":
                System.out.println("好评");
                break;
            case "B":
            case "b":
                System.out.println("一般");
                break;
            case "C":
            case "c":
                System.out.println("良好");
                break;
            case "D":
            case "d":
                System.out.println("良好");
                break;

            default:
                System.out.println("你的输入有误,请重新输入");
                break;

        }
    }

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值