举例回顾
简单举个例子回顾前面学过的 if 知识:
利用 if 语句实现一个判断给定月份对应的季节:
3~5月份:春天 6~8月份:夏天 9~11月份:秋天 12~2月份:冬天
代码:
import java.util.Scanner; //导包,记得末尾有分号
public class SeasonDemo{
public static void main(String [] args){
System.out.println("请输入月份:");
Scanner scn=new Scanner(System.in);
int month=scn.nextInt(); //容易犯错,记得输入 格式
if(month>=3 && month<=5){ //不能使用数学上的 3<=month<=5
System.out.println("春天");
}
else if(month>=6 && month<=8){
System.out.println("夏天");
}
else if(month>=9 && month<=11){
System.out.println("秋天");
}
if(month==12 | month==1| month==2) //这里是 ==
System.out.println("冬天");
}
}
关于代码,我们还要注意一下:
可读性:命名要规范,注释要让自己以及别人能看懂;缩进;
健壮性:判断时逻辑要严谨;
代码优化:写完后,还要思考能不能进行优化——代码结构:简单,减少冗余; 性能:减少内存空间;
优化后:
二.switch
switch 语句可以类比 if 语句,其结构如下:
switch ( 值 ) {
case 值1:语句一;
case 值2:语句二;
case 值3:语句三;
case 值4:语句四;
default : 语句 ;
}
(1)switch () {} 类似于 if () {};
(2) switch (值) {} 中的值 会自动和 case 后面的 值 进行对比,进而选择执行哪条语句,类似于 if 后面括号里的内容;
(3)按照道理,每条语句后应该有 break 语句,但这不是必须的,需要根据实际需求进行选择;
(4)default 语句是前面的条件都不满足的条件下执行的;
三.switch 与 if 的优缺点
if : 优点 适用于逻辑条件比较麻烦的情况 缺点:执行效率较低
switch 优点:执行效率较高 缺点:只能用于判断等于不等于的逻辑条件