2020-10-31
日穿钢板. 2020-10-31 08:07:54 6 收藏
版权
单路分支使用情景遇到某个情况时,会做某个事购物满88,减免邮费满多少,送多少语法if(条件){
执行结果
}
123二路分支情景判断一个条件,如果成立,执行a,否则,就执行b例子购物判断是否是会员,如果是会员,那么可以打8折,如果不是会员,打95折格式if(条件){
条件成立时的情况
} else{
条件不成立时的情况
}
12345多路分支情景判断条件1,如果成立,执行事件1。如果不成立,那么判断条件2,条件2如果成立,就执行事件2,不成立那就判断条件n,如果所有条件均不成立,那就执行else分支里的内容例子给学生的分数评级80以上是优秀60-80之间,是普通60分以下,是不合格格式if(条件1){
条件成立时的情况
} else if(条件2){
条件2成立时的情况
} else if(条件n){
条件n成立时的情况
}
else{
条件不成立时的情况
}
12345678910switch分支应用计算机编程大赛的奖励需求韩嫣参加计算机编程大赛如果获得第一名,将参加麻省理工大学组织的1个月夏令营如果获得第二名,将奖励惠普笔记本电脑一部如果获得第三名,将奖励移动硬盘一个否则,不给任何奖励分析解决另一种分支switch格式switch(变量){
case 值1:
要执行的代码;
break;
case 值n:
要执行的代码;
break;
default:
上述值都不匹配时会进入本分支
break;
}
12345678910111213例子public class 比赛奖励 {
public static void main(String[] args) {
// 定义一个名次变量
int mc = 9; switch (mc) {
case 1:
// sout + table
System.out.println(“夏令营”);
break;
case 2:
System.out.println(“笔记本”);
break;
case 3:
System.out.println(“移动硬盘”);
break;
default:
System.out.println(“没有任何奖励”);
}
System.out.println(“程序结束”);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
}
12345678910111213141516171819}switch分支 vs if 分支特点代码比if分支更加简洁缺点无法处理范围数据例如:如果分数在60到80之间,打印良好if(score>60 || score<80){打印良好}总结if语句可以处理任何分支功能更强所有switch可以处理的,if都能处理switch分支专门用于处理定值的分支电话客服系统1,话费充值2,宽带业务3,人工服务输入控制需求从键盘接收两个数据计算他们的和编码阶段一,实现基本功能import java.util.Scanner;
public class 简易计算器 {
public static void main(String[] args) {
// 获得键盘输入的工具
Scanner ipt = new Scanner(System.in);
// 提示用户输入数据
System.out.println("请输入第一个数:");
int num1 = ipt.nextInt();
// 提示用户输入第二个数据
System.out.println("请输入第二个数据:");
int num2 = ipt.nextInt();
// 求和
int s = num1 + num2;
System.out.println("两个数的和是" + s);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
}
12345678910111213141516171819202122存在的问题如果用户随意输入,会造成程序崩溃解决办法判断用户输入的类型格式Scanner对象.hasNext**例子需求从键盘输入一个数据,验证是否是整数,如果是整数,那让它翻倍,如果不是整数,提示数据非法代码import java.util.Scanner;
public class 测试键盘输入的验证 {
public static void main(String[] args) {
// 生成一个键盘输入的工具对象
Scanner ipt = new Scanner(System.in);
// 判断是否是整数
System.out.println(“请输入一个整数,我会让你翻倍:”);
boolean is_int = ipt.hasNextInt();
System.out.println(is_int);
if (is_int == true) {
System.out.println(“用户输入了合法的数据”);
int num = ipt.nextInt();
System.out.println(num * 2);
1
2
3
4
5
6
7
8
9
10
11
12
// System.out.println(用户输入的数据*2);
} else {
System.out.println(“非法数据,请不要再这样!”);
}
}
}
1234567891011121314151617181920212223242526模型局部变量案例现象一,a可以正常输出public class two {
public static void main(String[] args) {
int a = 1;
if (true) {
System.out.println("if里面的a " + a);
}
}
1
2
3
4
}
12345678910现象二,a不可以正常输出public class two {
public static void main(String[] args) {
if (true) {
int a = 1;
System.out.println(“if里面的a”+a);
}
System.out.println("if外面的a " + a);
}
1
2
3
4
5
6
7
}
123456789101112小结变量能否正常使用,取决于它在哪里定义它的生命范围在出生地所对应的花括号范围内if补充条件的本质if(条件){
执行内容
}
条件的本质最终就是布尔值
如果
条件通常是运算的结果,如
temp>=37.3
if(条件){
条件的结果是true,就执行这里代码}
else{
条件的结果是false,执行这里的代码
}