java之流程控制-选择结构

一.用户交互Scanner

java.util.Scanner 导入的Scanner类
可以通过Scanner类来获取用户的输入

基本语法

	Scanner sc=new Scanner(System.in);			
	//创建一个扫描器对象,用于接收键盘数据

通过Scanner类的next()nextLint() 方法获取输入的字符串
① next():
1.读取到有效字符后结束输入
2.输入有效字符后,以空白作为分隔符或者结束符
3. next()不能得到带有空格的字符串
运行结果:
在这里插入图片描述

② nextLine():
1.以回车Enter为结束符,返回输入回车之前的所有字符
2.可以获得空白。
运行结果
在这里插入图片描述

Scanner进阶使用
1在这里插入图片描述

2在这里插入图片描述

二.顺序结构

在这里插入图片描述

三.选择结构

1. if单选择语句语法
if(布尔表达式){
如果布尔表达式的值为true
}

		Scanner sc=new Scanner(System.in);
		System.out.println("请输入内容:");
		String s=sc.nextLine();
		/*
		 if(布尔表达式){
 			如果布尔表达式的值为true
		 }
        */
		
		//equals:判断字符串是否相等
		if(s.equals("Hello")){
			System.out.println(s);
		}
		System.out.println("End");
		
		sc.close();//关闭IO流

在这里插入图片描述

2.if双选择结构语法
if(布尔表达式){
如果布尔表达式的值为true
}else{
如果布尔表达式的值为false
}

		Scanner sc=new Scanner(System.in);
		System.out.println("请输入内容:");
		String s=sc.nextLine();
		/*
		 if(布尔表达式){
 			如果布尔表达式的值为true
		 }
        */
		
		//equals:判断字符串是否相等
		if(s.equals("Hello")){
			System.out.println(s);
		}
		System.out.println("End");
		
		sc.close();//关闭IO流

在这里插入图片描述

		Scanner sc=new Scanner(System.in);
		System.out.println("请输入:");
		int x=sc.nextInt();
		if (x % 2 == 0){
			System.out.println("偶数");
		}else{
			System.out.println("奇数");
		}

在这里插入图片描述

3.if多选择结构
if(布尔表达式 1){
如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
如果布尔表达式 3的值为true执行代码
}else{
如果以上布尔表达式都不为true执行代码
}

		Scanner sc=new Scanner(System.in);
		System.out.println("请输入成绩:");
		int score =sc.nextInt();
		
		if(score==100){
			System.out.println("恭喜满分");
		}else if(score<100 && score>=90){
			System.out.println("A级");
		}else if(score<90 && score>=80){
			System.out.println("B级");
		}else if(score<80 && score>=70){
			System.out.println("C级");
		}else if(score<70 && score>=60){
			System.out.println("D级");
		}else if(score<60 && score>=0){
			System.out.println("不及格");
		}else{
			System.out.println("成绩不合法");
		}

在这里插入图片描述

		Scanner sc=new Scanner(System.in);
		System.out.println("请输入数字:");
        int y=sc.nextInt();
        if (y == 1) {
            System.out.println("星期一");
        }else if (y == 2) {
            System.out.println("星期二");
        }else if (y == 3) {
            System.out.println("星期三");
        }else{
            System.out.println("不知道星期几");
        }

在这里插入图片描述

4.嵌套的if结构
嵌套语句:if或else if里面嵌套一个if或else if
if(布尔表达式 1){
如果布尔表达式 1的值为true执行代码
if(布尔表达式 2){
如果布尔表达式 2的值为true执行代码
}
}

		int x = 4;
		int y = 4;
		if (x > 2) {   //x=4,执行if的分支
		    if (y > 2) { //判断y是否大于2,如果是就执行if分支
	            System.out.println(x + y);
	        }
		} else{
       			System.out.println("x is " + x);
		}

在这里插入图片描述
5.switch多选择结构

	 //case穿透,,,switch匹配一个具体的值
	 switch(expression){
	 	case value:
	 		//语句
	 		break;//可选
	 	case value:
	 		//语句
	 		break;//可选
	 	default://可选
	 		//语句
	 }

①switch语句中的变量类型可以是:byte、short、int、char、String
②同时case子句中的值必须为字符串常量或字面量,且所有case子句中的值是不相同的
③default子句是可任选的,当没有匹配的case时,执行default
④break语句是用来执行完一个case分支后使程序跳出switch语句块;如果没有break,程序会顺序执行到switch结尾

当没有加break的时候,程序会顺序执行到switch结尾
在这里插入图片描述

有加break语句,执行完就直接跳出switch循环

		char x='B';
		switch(x){
			case 'A':
				System.out.println(x +"优秀");
				break;
			case 'B':
				System.out.println(x +"良好");
				break;
			case 'C':
				System.out.println(x +"及格");
				break;
			case 'D':
				System.out.println(x +"再接再厉");
				break;
			case 'E':
				System.out.println(x +"挂科");
				break;
			default:
				System.out.println(x +"未知等级");
				break;
		}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值