Java学习笔记day2--分支结构之switch
/* switch(表达式){ case 常量1: 语句1; //break; case 常量2: 语句2; //break; …… default: 语句; //break; 说明: 1.按照switch表达式里的值,依次匹配各个case中的常量,一旦成功匹配,则进入相应的case结构,调用执行语句。 当调用完执行语句之后,则仍然向下执行其他case结构的执行语句,直到遇到break关键字或者到达此switch结构末尾为止。 2.switch结构中的表达式,只能是如下的六种数据类型之一:byte、short、char、int、枚举类型、String类型 3.case之后只能跟常量,不能声明范围 4.break关键字是可选的 5.default相当于if-else结构中的else,也是可选的。 6.凡是可以使用switch-case的格式都可以转换成if-else,反之,则不行。 7.当我们写分支结构时,发现既可以使用switch-case又可以使用if-else时,且switch的表达式取值常量数量不多时,推荐使用switch-case } */ import java.util.Scanner; public class liuckz { public static void main(String[] agrs) { int num=2; switch(num) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); break; case 2: System.out.println("three"); break; case 3: System.out.println("four"); break; default: System.out.println("other"); } //String型 String season="spring"; switch(season) { case "spring": System.out.println("春暖花开"); break; case "summer": System.out.println("夏日炎炎"); break; case "autumn": System.out.println("秋高气爽"); break; case "winter": System.out.println("白雪皑皑"); break; default: System.out.println("您输入的季节有误"); break; } /* 例题1: 使用switch把小写类型的char转换成大写,只转换a,a,b,c,d,e,其他的输出“other” */ Scanner scan= new Scanner (System.in); System.out.println("请输入一个小写字母:"); String word=scan.next(); char c=word.charAt(0); switch(c) { case 'a': System.out.println("A"); break; case 'b': System.out.println("B"); break; case 'c': System.out.println("C"); break; case 'd': System.out.println("D"); break; case 'e': System.out.println("E"); break; default: System.out.println("other"); } /* 例题2: 对学生成绩大于60分的,输入“合格”;低于60分的,输出“不合格” */ System.out.println("请输入学生成绩:(0~100)"); int score=scan.nextInt(); switch(score/60) { case 1: System.out.println("合格"); break; case 0: System.out.println("不合格"); break; default: System.out.println("请输入符合规范的成绩"); break; } /* 例题3: 根据指定的月份,打印该月份所属的季节。 3,4,5春季;6,7,8夏季;9,10,11,秋季;12,1,2冬季。 */ System.out.println("请输入月份:"); int months=scan.nextInt(); switch(months/3) { case 1: System.out.println("spring"); break; case 2: System.out.println("summer"); break; case 3: System.out.println("autumn"); break; default: System.out.println("winter"); } //**************************************++++++较难+++++************************************** /* 例题4: 编写程序,从键盘上输入2019年的“month”和“day”,要求通过程序输出输入日期为2019年的第几天 */ System.out.println("请输入月份:"); int month=scan.nextInt(); System.out.println("请输入日期:"); int day=scan.nextInt(); int days=0; //按老师提示后想到的方法:利用break的可选,实现累加 switch(month) { case 12: days+=30; case 11: days+=31; case 10: days+=30; case 9: days+=31; case 8: days+=31; case 7: days+=30; case 6: days+=31; case 5: days+=30; case 4: days+=31; case 3: days+=28; case 2: days+=31; case 1: days+=day; } System.out.println("2019年"+month+"月"+day+"日是2019年第"+days+"天"); //*********************************************************************************************** } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~