/** *@Title: ${filename} *@Package: ${package_name} *@Description: ${todo} * 开关语句 语法格式 switch(值表达式) { case 值1: 语句块1; break; case 值2: 语句块2; break; case 值3: 语句块3; break; case 值4: 语句块4; break; ......... default: 其它语句块; break; //可省略 }
总结: 开关语句,可以在某种情况下,可以替代多重if 某种情况:等值判断 开关语句, 值表达式 char int byte short enum 字符串
注意 break 不要遗漏 如果有些情况下,可以利用break来做一做文章 * *@author: 源代码资料尽在"清哥好课堂"公众号:qghktit *@date: ${date}${time} *@version: 1.0 */ import java.util.*; public class SwitchDemo { public static void main(String[] args) { /* 给你一个某年某月,问这个月有多少天 大月,小月,2月 思路: 1、接收年和月 2、判断,月是大月、小月、2月 3、大月 1,3,5,7,8,10,12 小月 4,6,9,11 2月 分闰年和平年 能够被4整除且不能被100整除,或者能够被400整除
*/ Scanner input = new Scanner(System.in); System.out.println("请输入年份:"); int year = input.nextInt(); System.out.println("请输入月份:"); int month = input.nextInt(); int days; //当月的天数 //用多重if结构 // if (month == 2)//判断是否是2月 // { // if (year%4==0&&year%100!=0 || year%400==0) //是闰年 // { // days = 29; // } // else //是平年 // { // days = 28; // } // } // else if (month==4 || month==6 || month==9 ||month==11) // {//判断是否是小月 // days=30; // } // else // 大月 // { // days = 31; // } //用开关语句 switch (month) //判断月份是哪个月,就知道当月有多少天 { case 2: // 是2月 if (year%4==0&&year%100!=0 || year%400==0) //是闰年 { days = 29; } else //是平年 { days = 28; } break; case 4: //是小月 // days=30; // break; case 6: // days=30; // break; case 9: // days=30; // break; case 11: days=30; break; default : //大月 days = 31; break; }
System.out.println(year+"年"+month+"月的天数:"+days); } public static void main2(String[] args) { /* 从键盘输入一个成绩 <60 不及格 60-70 合格 70-80 良好 80-90 优秀 90-100 超级优秀 */ //接收一个成绩 Scanner sc = new Scanner(System.in); System.out.println("please input your score:"); int score = sc.nextInt(); sc = null; score /=10; System.out.println(score);
//开关语句 switch (score) //具体的值 { case 10: //System.out.println("超级优秀"); //break; 为了合理处理而为之 case 9: // 90-99的值 9 System.out.println("超级优秀"); break; case 8: //80-89 System.out.println("优秀"); break; case 7: //70-79 System.out.println("良好"); break; case 6: //60-69 System.out.println("及格"); break; default: //<60 System.out.println("不合格"); break; }
// score/10 // 65/10=6 // 55/10=5 // 90/10=9
//从左往右 // if (score<60) // <60 // { // System.out.println("不合格"); // } // else if (score<70) // >=60 && <70 // { // System.out.println("及格"); // } // else if (score<80) //>=70 && <80 // { // System.out.println("良好"); // } // else if (score<90) //>=80 && <90 // { // System.out.println("优秀"); // } // else // >=90 // { // System.out.println("超级优秀"); // } } public static void main1(String[] args) { /* 中奖 中一等奖,奖品:得清哥面对面交流一天 中二等奖,奖品:得清哥视频交流一次 中三等奖,奖品:得清哥好课堂课程代金券一张 其它 :得:可以免费参与线下活动 */ System.out.println("兑奖,请输入一个数字:"); Scanner sc = new Scanner(System.in);
int t = sc.nextInt(); //表示中几等奖 sc = null;
//使用开关语句 switch (t) { case 1: //中一等奖 System.out.println("得清哥面对面交流一天"); break; case 2: //中二等奖 System.out.println("得清哥视频交流一次"); break; case 3: //中三等奖 System.out.println("得清哥好课堂课程代金券一张"); break; default: //中其它 System.out.println("可以免费参与线下活动"); break; }
// if (t == 1) //中一等奖 // { // System.out.println("得清哥面对面交流一天"); // } // else if (t == 2) //中二等奖 // { // System.out.println("得清哥视频交流一次"); // } // else if ( t== 3) //中三等奖 // { // System.out.println("得清哥好课堂课程代金券一张"); // } // else //其它 // { // System.out.println("可以免费参与线下活动"); // }
} }
清哥好课堂公众号 微信号 : qghktit 新浪微博:清哥好课堂
|