当前位置: 首页 > news >正文

嘉兴型网站系统总部网站根目录

嘉兴型网站系统总部,网站根目录,.net网站开发源码注释,网站没有内容 备案能成功吗文章目录 传统switch声明语句的弊端#xff1a;JDK12中预览特性#xff1a;JDK13**JDK17的预览特性#xff1a;switch的模式匹配** 传统switch声明语句的弊端#xff1a; 匹配是自上而下的#xff0c;如果忘记写break#xff0c;后面的case语句不论匹配与否都会执行JDK12中预览特性JDK13**JDK17的预览特性switch的模式匹配** 传统switch声明语句的弊端 匹配是自上而下的如果忘记写break后面的case语句不论匹配与否都会执行 —case穿透所有的case语句共用一个块范围在不同的case语句定义的变量名不能重复不能在一个case里写多个执行结果一致的条件整个switch不能作为表达式返回值 //常见错误实现 switch(month){case 3|4|5://3|4|5 用了位运算符11 | 100 | 101结果是 111是7System.out.println(春季);break;case 6|7|8://6|7|8用了位运算符110 | 111 | 1000结果是1111是15System.out.println(夏季);break;case 9|10|11://9|10|11用了位运算符1001 | 1010 | 1011结果是1011是11System.out.println(秋季);break;case 12|1|2://12|1|2 用了位运算符1100 | 1 | 10 结果是1111是15System.out.println(冬季);break;default:System.out.println(输入有误); }JDK12中预览特性 Java 12将会对switch声明语句进行扩展使用case L -来替代以前的break;省去了 break 语句避免了因少写 break 而出错。 同时将多个 case 合并到一行显得简洁、清晰也更加优雅的表达逻辑分支。 为了保持兼容性case 条件语句中依然可以使用字符 : 但是同一个 switch 结构里不能混用 - 和 : 否则编译错误。 举例 Java 12之前 public class SwitchTest {public static void main(String[] args) {int numberOfLetters;Fruit fruit Fruit.APPLE;switch (fruit) {case PEAR:numberOfLetters 4;break;case APPLE:case GRAPE:case MANGO:numberOfLetters 5;break;case ORANGE:case PAPAYA:numberOfLetters 6;break;default:throw new IllegalStateException(No Such Fruit: fruit);}System.out.println(numberOfLetters);} } enum Fruit {PEAR, APPLE, GRAPE, MANGO, ORANGE, PAPAYA; }switch 语句如果漏写了一个 break那么逻辑往往就跑偏了这种方式既繁琐又容易出错。 Java 12中 public class SwitchTest1 {public static void main(String[] args) {Fruit fruit Fruit.GRAPE;switch(fruit){case PEAR - System.out.println(4);case APPLE,MANGO,GRAPE - System.out.println(5);case ORANGE,PAPAYA - System.out.println(6);default - throw new IllegalStateException(No Such Fruit: fruit);};} }更进一步 public class SwitchTest2 {public static void main(String[] args) {Fruit fruit Fruit.GRAPE;int numberOfLetters switch(fruit){case PEAR - 4;case APPLE,MANGO,GRAPE - 5;case ORANGE,PAPAYA - 6;default - throw new IllegalStateException(No Such Fruit: fruit);};System.out.println(numberOfLetters);} }JDK13 JDK13中引入了yield语句用于返回值。这意味着switch表达式(返回值)应该使用yieldswitch语句(不返回值)应该使用break。 yield和return的区别在于return会直接跳出当前循环或者方法而yield只会跳出当前switch块。 在以前 Test public void testSwitch1(){String x 3;int i;switch (x) {case 1:i1;break;case 2:i2;break;default:i x.length();break;}System.out.println(i); }在JDK13中 Test public void testSwitch2(){String x 3;int i switch (x) {case 1 - 1;case 2 - 2;default - {yield 3;}};System.out.println(i); }或者 Test public void testSwitch3() {String x 3;int i switch (x) {case 1:yield 1;case 2:yield 2;default:yield 3;};System.out.println(i); }JDK17的预览特性switch的模式匹配 旧写法 static String formatter(Object o) {String formatted unknown;if (o instanceof Integer i) {formatted String.format(int %d, i);} else if (o instanceof Long l) {formatted String.format(long %d, l);} else if (o instanceof Double d) {formatted String.format(double %f, d);} else if (o instanceof String s) {formatted String.format(String %s, s);}return formatted; }模式匹配新写法 static String formatterPatternSwitch(Object o) {return switch (o) {case Integer i - String.format(int %d, i);case Long l - String.format(long %d, l);case Double d - String.format(double %f, d);case String s - String.format(String %s, s);default - o.toString();}; }直接在 switch 上支持 Object 类型这就等于同时支持多种类型使用模式匹配得到具体类型大大简化了语法量这个功能很实用。
http://www.sadfv.cn/news/39821/

相关文章:

  • 网站建设与管理 期末广东中山网站建设 光龙
  • 做网站数据存在哪里项目从立项到施工的程序
  • 网站产品介绍模板企业网站建设内存
  • 使用阿里云建网站微信营销软件app
  • 淄博哪家公司做网站最好哪里可以做网站推广
  • 淘宝的网站是怎么做的江西省建设监督网站
  • 广州开发网站报价做网站 贴吧
  • 网站服务运营队伍与渠道建设wordpress内容里的图片大小
  • 上海市建设质量协会网站2017山亭区建设局网站
  • 温江网站开发企业建站网站认证
  • 实时开奖走势网站建设友情链接的作用
  • 宁波网站推广专业的建站优化公司做网站要准备哪些素材
  • 网站怎么建设模块河南省新闻发布会最新
  • 个人电脑做网站智慧团手机网上登录入口
  • 内销机械做哪个网站好黄岛做网站哪家好
  • 培训教材网站建设网站加背景音乐
  • 惠州市做网站做网站的毕业答辩ppt实例
  • 网站站长需要具备什么素质员工培训课程
  • 成都青羊区建设局网站俞润装饰做哪几个网站
  • 在哪里找手机网站建设公司汕头多语种网站制作
  • 河北省建设工程质量监督网站织梦模板怎么验证网站
  • 免费外贸网站wordpress手机投稿
  • 微信公众号php网站开发地板网站建设方案
  • vs2012怎么做网站室内设计平面图上色
  • 网站忧化教程网页制作个人简历网页的步骤
  • 属于网站建设过程规划和准备阶段的是网络服务器在哪里
  • 网站建设伍金手指下拉2做网站的动态图片
  • 网站建设征求意见分析报告应用商店搜索优化
  • 产品网站建设找哪家建设家居网站
  • 网站推广方案整理网建服务