点击右上角,加关注,私信“项目课程”,即可获得高并发分布式电商项目以及适合初学者的网盘项目课程视频以及源码哦[飞吻]
前言
智慧生物都会想:如果XXX,我就XXX,人工智能也是这么发展来的。本文我们开始学习程序中的分支判断语句。分支语句包括:
- if语句
- if-else语句
- 多重if
- 嵌套if
- switch语句
if语句
语法结构:
if(条件){
语句;
}
玩游戏时,判断如果对方英雄血量低于100,就过去打他,怎么用程序表示?执行流程:
练习1:完成上面的案例
int hp = 80;
//判断血量是否小于100,就进行攻击
if(hp < 100){
System.out.println("赶快冲去打他");
}
练习2:说出下列代码的结果1) 小括号后面不要加分号
int n = 1220;
if(n < 100);{
System.out.println("n < 100");
}
2 ) 如果有多条语句,必须使用大括号括起来
if(n < 1000)
System.out.println("test1......");
System.out.println("test2......");
3)做相等判断时使用==,不是=
boolean b1 = false;
boolean b2 = true;
if(b2 = b1){
System.out.println("相同.");
}
练习3 :定义年龄和性别变量,如果年龄大于等于18并且性别为”女” 输出”女大十八变”注意:在对String变量的值进行相等判断时,应该使用equals方法
if( age >= 18 && sex.equals("女")){
System.out.println("女大十八变!");
}
if-else语句
语法结构:
if(条件){
语句1;
}else{
语句2;
}
如果条件成立,就执行if后的语句1,如果不成立就执行else后面的语句2;
如果对方英雄血量低于100就过去追,否则就躲草里,怎么实现?执行流程:
练习1:完成上面的案例
Scanner input = new Scanner(System.in);
System.out.println("请输入对方的HP:");
int hp = input.nextInt();
if(hp < 100){
System.out.println("我们过去打他");
}else{
System.out.println("我们躲在草丛里");
}
练习2:输入银行存款数额,超过100w就输出”老子不去上班了!!”,否则输出”老板,996没问题的”
多重if语句
语法结构:
if(条件1){
语句1;
}else if(条件2){
语句2;
}else{
缺省语句;
}
有N个条件,依次判断,只要有一个条件成立,执行条件后的语句然后结束,否则判断下一个条件。
如果对方攻击力超过100就找3个人打他,否则如果超过50就找2个人打他,没有50就和他单挑。流程图:
练习1:完成上面的案例
//1、定义攻击力变量
int attack;
//2、输入攻击力
Scanner input = new Scanner(System.in);
System.out.println("请输入对方的攻击力:");
attack = input.nextInt();
//判断攻击力是否超过100
if(attack > 100){
System.out.println("我们三个一起过去打他");
}else if(attack > 50){//否则如果超过50就2个人打他
System.out.println("找两个一起过去打他");
}else{//没有50就和他单挑。
System.out.println("我过去跟他单挑");
}
练习2:从键盘输入考试分数
int score = ....;
score >=90时输出:"学霸实在牛"
score >=80...学神要加油
score >=70....学民好害羞
score >=60....学弱打酱油
score <60.... 学渣泪在流
嵌套if语句
团战时如果血量超过200就参加战斗,血量不足200就退出战斗,战斗时魔法值超过300就放大招,不足300就物理攻击。
语法结构:在一个if结构中,完整嵌入另一个if结构
if(外部条件){
if(内部条件){
语句;
}else{
语句;
}
}else{
语句;
}
执行流程:在外部条件成立的情况下,才进行内部条件的判断
练习1:完成上面的案例
Scanner input = new Scanner(System.in);
System.out.println("输入血量:");
int hp = input.nextInt();
System.out.println("输入蓝量:");
int mp = input.nextInt();
//外层判断血量
if(hp > 200){
//内层判断蓝量
if(mp > 300){
System.out.println("我放大招了!!");
}else{
System.out.println("我物理攻击!!");
}
}else{
System.out.println("兄弟们,我撤了");
}
练习2: 输入性别和年龄,如果性别为”男”,年龄超过65就可以退休,否则继续上班,如果性别为”女”,年龄超过60就可以退休,否则继续上班
Scanner input = new Scanner(System.in);
System.out.println("输入性别");
String sex = input.next();
System.out.println("输入年龄");
int age = input.nextInt();
//外层判断性别
if(sex.equals("男")){
//判断男的退休年龄
if(age >= 65){
System.out.println("老爹爹你可以退休了");
}else{
System.out.println("兄弟你还是好好上班吧");
}
}else if(sex.equals("女")){
//判断女的退休年龄
if(age >= 60){
System.out.println("老婆婆你可以退休了");
}else{
System.out.println("美女你还是好好上班吧");
}
}else{
System.out.println("你的性别出错了");
}
switch结构
语法:
switch(表达式或变量){
case 值1:
语句1;
break;
case 值2:
语句2;
break;
....
default:
缺省语句;
}
switch的有关规则
- switch判断的表达式或变量的类型:byteshortintcharStringenum(枚举)
- break可以结束switch结构,break是可以省略,省略后执行完语句后会继续执行下一个case
- case后面的值不能重复
- default语句可以省略
- case的顺序可以颠倒
switch与多重if的比较:
- switch的运行流程和多重if一样,switch语法更加简洁
- switch只能用于判断单个值得,多重if可以判断一个范围
练习1:通过技能索引控制 寒冰射手 的技能,输入索引1,输出万箭齐发,输入索引2,输出鹰击长空,输入索引3,输出大招水晶箭。
Scanner scanner = new Scanner(System.in);
System.out.println("输入寒冰MM的技能:");
int skill = scanner.nextInt();
switch(skill){
case 1:
System.out.println("万箭齐发");
break;
case 2:
System.out.println("鹰击长空");
break;
case 3:
System.out.println("水晶箭");
break;
default:
System.out.println("按错了");
break;
}
练习2:模拟银行电话服务,输入1,提示”银行卡业务”;输入2,提示”信用卡业务”;输入3,提示”业务咨询”;输入4,提示”人工服务”,其它数字,提示”挂机”
结束
留作业了,做完这里就代表你掌握了今天的内容。
- 完成代码:输入手机价格超过5000就输出”去买 IPHONE “,否则输出”Android手机也行”
- 从键盘输入天气温度温度大于40时输出:”大家都熟了”温度在30到40间时输出:”我们只要空调、西瓜和WIFI”温度在20到30间时输出:”天气凉,可以浪”温度小于20时输出:”多穿衣服,免得感冒”
- 输入月份数字,输出该月份的一个节日。
- 实现简单的抽奖程序生成一个0到9之间的随机数,输入一个数字和随机数进行比较,输出是否中奖。使用随机数的方法:1 在定义class的前面加上import java.util.Random;2 获得随机数代码:Random rand = new Random();int number = rand.nextInt(10); //获得0~9之间的随机整数
如果本文对你有帮助,就麻烦点个赞啦