Day04

Java学习第四天

Java中的语句分类

顺序语句
	代码从上向下依次执行
分支语句
	有多个选择,但是只能选择一条进行执行
循环语句

分支语句(重点,重点,重点)

作用

判断

分支语句的分类

if
switch

if(重点)

1,基本的if语句
	语法:
		if(条件表达式){
			当条件表达式值为true时,执行的代码
		}
	案例:
		去网吧上网,年龄大于等于18岁,显示欢迎来自艾欧尼亚的最强王者
	思路:
		1,定义一个变量记录年龄
		int age = 21;
		2,判断年龄是否大有等于18
		if(age >= 18){
			2.1:大于等于18,欢迎来自艾欧尼亚的最强王者
			System.out.println("欢迎来自艾欧尼亚的最强王者");
		}		
2,if else语句
	语法:
		if(条件表达式){
			当条件表达式值为true时,执行的代码
		}else{
			当条件表达式值为false时,执行的代码
		}
	案例:
		去网吧上网,年龄大于等于18岁,显示欢迎来自艾欧尼亚的最强王者
		如果年龄小于18岁,显示悄悄告诉你旁边有个黑网吧
	思路:
		1,定义一个变量记录年龄
		int age = 21;
		2,判断年龄是否大有等于18
		if(age >= 18){
			2.1:大于等于18,欢迎来自艾欧尼亚的最强王者
			System.out.println("欢迎来自艾欧尼亚的最强王者");
		}else{
			2.2:小于18
			System.out.println("悄悄告诉你旁边有个黑网吧");
		}	
3,else if语句
	语法:
		if(条件表达式1){
			当条件表达式1为true时,执行此处代码
		}else if(条件表达式2){
			当条件表达式2为true时,执行此处代码
		}else if(条件表达式3){
			当条件表达式3为true时,执行此处代码
		}
		...
		else if(条件表达式n){
			当条件表达式n为true时,执行此处代码
		}else{
			当以上条件都不满足,执行此处代码
		}
		注意:
			else if可以有多个,也可以没有
			else可有可无
	案例:
		案例:
		去网吧上网,年龄大于等于18岁并且小于等于80,显示欢迎来自艾欧尼亚的最强王者
		如果年龄小于18岁大于等于0,显示悄悄告诉你旁边有个黑网吧
		大于80小于120:老爷子回家逗孩子吧
		大于120:给博物馆打电话
		小于0:准备报警
	代码:
		int age = 230;
		if(age < 0){
			System.out.println("报警");
		}else if(0 <= age && age < 18){
			System.out.println("悄悄告诉你旁边有个黑网吧");
		}else if(18 <= age && age <= 80){
			System.out.println("欢迎来自艾欧尼亚的最强王者");
		}else if(80 < age && age < 120){
			System.out.println("老爷子回家逗孩子吧");
		}else if(age > 120){
			System.out.println("给博物馆打电话");
		}else{
			System.out.println("年龄等于120");
		}
	练习:
		键盘录入成绩
		显示成绩区间
			小于0或大于100:成绩输入有误
			0~59:D
			60~74:C
			75~84:B
			85~100:A
	
	
4,if的嵌套
	在if大括号中可以使用if
	案例:
		去超市购物,满200打8折,会员在打8折,不满200,是会员打8折,不满200,不是会员不打折
	思路:
		1,定义一个变量记录消费金额
		double money01 = 230;
		2,定义一个变量记录是否为会员
		String isVIP = "是";
		3,判断消费金额是否大于等于200
		if(money01 >= 200){
			3.1:大于等于200
			3.1.1:计算折后金额
			double money02 = money01 * 0.8;
			3.1.2:判断是否为会员
			if(isVIP.equals("是")){
				3.1.2.1:是会员
				使用3.1.1计算的金额,在打8折
				double money03 = money02 * 0.8;
				输出最终金额
				System.out.println("本次消费金额为:"+money01+",本次实付金额:"+money03+",本次优惠金额:"+(money01-money03));
			}else{
				3.1.2.2:不是会员
				输出3.1.1计算的金额
				System.out.println("本次消费金额为:"+money01+",本次实付金额:"+money02+",本次优惠金额:"+(money01-money02));
			}
		}else{
			3.2:小于200
			3.2.2:判断是否为会员
			if(isVIP.equals("是")){
				3.2.2.1:是会员
				使用1的金额,在打8折
				double money02 = money01 * 0.8;
				输出最终金额
				System.out.println("本次消费金额为:"+money01+",本次实付金额:"+money02+",本次优惠金额:"+(money01-money02));
			}else{
				3.2.2.2:不是会员
				输出1的金额
				System.out.println("本次消费金额为:"+money01+",本次实付金额:"+money01+",本次优惠金额:"+(money01-money01));
			}
		}
			
			
总结
	语法:
		if(条件表达式1){
			当条件表达式1为true时,执行此处代码
		}else if(条件表达式2){
			当条件表达式2为true时,执行此处代码
		}else if(条件表达式3){
			当条件表达式3为true时,执行此处代码
		}
		...
		else if(条件表达式n){
			当条件表达式n为true时,执行此处代码
		}else{
			当以上条件都不满足,执行此处代码
		}
	注意:
		else if可以有多个,也可以一个没有
		else可有可无
		在if语句的大括号中可以使用if语句
		有if才会有else if或else

switch

语法:
	switch(变量){
		case 常量1:
		当变量值等于常量1时,执行此处代码
		break;
		case 常量2:
		当变量值等于常量2时,执行此处代码
		break;
		...
		case 常量n:
		当变量值等于常量n时,执行此处代码
		break;
		default:
		当变量值不等于以上常量时执行此处代码
		break;
	}
案例:
	给女朋友送礼物
		元旦			一束鲜花		200
		春节			发红包			200
		元宵			吃元宵			500
		情人节			包			 300
		女神节			化妆品			320
		愚人节			玩笑			 0
		520			  转账			520
		521			  转账			521
		儿童节			零食大礼包		180
		七夕情人节	   花			 200
		中秋			 吃月饼		  500
		国庆			 去旅游		  10000
		双11			 清空购物车		 0
		圣诞节			吃饭看电影		500
		狂欢夜			吃饭看电影		500
		平安夜			吃饭看电影		500
	代码:
		1,定义一个变量记录节日名称
		String tag = "国庆";
		2,使用switch进行判断
		switch(tag){
			case "元旦":
			System.out.println("送一束鲜花");
			break;
			case "春节":
			System.out.println("发红包");
			break;
			case "元宵":
			System.out.println("吃元宵");
			break;
			default:
			System.out.println("暂未收录此节日");
			break;
		}
	案例:输入月份显示对应的季节
		2,3,4:春季
		5,6,7,8,9:夏季
		10:秋季
		11,12,1:冬季
	
	代码:
		//1,倒入Scanner所在的包
		import java.util.Scanner;
		class Demo08{
			public static void main(String[] args){
				//2,创建Scanner的对象
				Scanner sca = new Scanner(System.in);
				//3,提示用户输入月份
				System.out.println("请输入月份:");
				//4,等待用户输入月份的值
				int num = sca.nextInt();
				//5,判断月份对应的季节
				switch(num){
					case 2:
					case 3:
					case 4:
						System.out.println("春季");
					break;
					case 5:
					case 6:
					case 7:
					case 8:
					case 9:
						System.out.println("夏季");
					break;
					case 10:
						System.out.println("秋季");
					break;
					case 11:
					case 12:
					case 1:
						System.out.println("冬季");
					break;
				}
			}
		}
	注意:
		如果case没有对应的break,会导致程序贯穿.直到遇到break
		break:跳出当前代码块

if与switch的区别

if可以判断区间,也可以判断值是否相同
if代码结构稍微有一点混乱

switch只能判断值是否相同
switch的语法稍微简单一些
switch的执行效率稍微高于if
switch的变量只能是基本数据类型或String,而且String是在jdk1.5及以后才支持

局部变量

概念:在方法中声明的变量,就是局部变量
注意:
	1,同一个作用域下,局部变量不能重名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小陈不想玩辣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值