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

广州住建网站pw网站更换域名

广州住建网站,pw网站更换域名,在哪个网站上做兼职比较好,视频号直播推广二维码首先我们必须承认#xff0c;Java 8 是一个里程碑式的版本#xff0c;这个相信大多数Java程序员都认同#xff0c;其中最知名的是 Streams Lambda #xff0c;这让 Functional Programming 成为可能#xff0c;让 Java 换发新的活力。这也是即便 Oracle 不在支持 Ja…首先我们必须承认Java 8 是一个里程碑式的版本这个相信大多数Java程序员都认同其中最知名的是 Streams Lambda 这让 Functional Programming 成为可能让 Java 换发新的活力。这也是即便 Oracle 不在支持 Java 8 的更新各个云厂商还是积极支持站点为https://adoptopenjdk.net/可以让 Java 8 能继续保留非常长的时间。 目前非常多的同学日常开发并没有切换到 Java 8 后续的版本所以这篇文章我们打算写一个后 Java 8 时代的特性主要是偏向于开发的不涉及 GC , Compiler , Java Module , Platform 等如果一一解释估计非常长的文章当然后续可以写另外文章介绍。下面的这些特性会影响到我们日常的代码编写。 考虑到 Java 13 马上发布所以版本覆盖从 9 到 13 与此同时 Java Release 的方式调整一些特性是在某一版本引入(preview)后续收到反馈后做了非常多的增强和完善这里就不一一说明特性是哪个版本的你可以理解为后Java 8版本后的特性大杂烩。参考资料来源于官方 features 和 pluralsight 上每一个版本的 Java 特性介绍。 var 关键字(局部变量类型推导) Local-Variable Type Inference Java 支持泛型但是如果类型非常长你又不是特别关注你用 var 关键字就可以啦可以让你代码非常简洁。Java IDE 都非常好地支持 var不用担心代码提示等问题。 MapString, ListMapString,Object store new ConcurrentHashMapString, ListMapString,Object();MapString, ListMapString,Object store new ConcurrentHashMap();MapString, ListMapString,Object store new ConcurrentHashMapString, ListMapString,Object();//lambdaBiFunctionString, String, String function1 (var s1, var s2) - s1 s2;System.out.println(function1.apply(text1, text2)); 复制 confd 文件到 bin 目录下启动 confd sudo cp bin/confd /usr/local/bin confd 实际的使用中还有一些小的限制如 null 赋值问题等但是这些不是什么问题马上用起来。 ProcessHandle 虽然我们很少在 Java 中调用系统命令但是偶尔用到也是有的当然都是ProcessBuilder 。还有一个就是增强的 ProcessHandle 可以了解其他进程的一些信息如获取所有进程、某一进程的启动的命令、启动时间等等。 ProcessHandle ph ProcessHandle.of(89810).get(); System.out.println(ph.info()); Collection factory methods 创建 ArrayList , HashSet 还是用 new 方法有点过时啦直接使用工厂方法就可以啦。 SetInteger ints Set.of(1, 2, 3); ListString strings List.of(first, second); String 类的新 API 这里没法一一列举说几个重要的 了解后就不需要第三方的 StringUtils 啦。repeat, isEmpty, isBlank, strip, lines, indent, transform, trimIndent, formatted 等 HTTP 2支持 当然如果你使用 OkHTTP 3 那就没有问题如果你不想引入其他开发包那么 Java 已经支持 HTTP 2 啦代码基本也差不多当然同步和异步都支持。 HttpClient client HttpClient.newHttpClient();HttpRequest req HttpRequest.newBuilder(URI.create(https://httpbin.org/ip)).header(User-Agent, Java).GET().build();HttpResponseString resp client.send(req, HttpResponse.BodyHandlers.ofString());System.out.println(resp.body()); Text Block(JDK 13) 在之前版本你要有一大段文本你要对双引号进行转换转换后非常不适合阅读如下 String jsonText {id: 1, nick: leijuan}; 新的方式 text block: //languagejsonString cleanJsonText {id: 1, nick: leijuan}; 简单多啦你可以自由写代码不用担心各种双引号转换的问题copy分享转换等。稍等你为何要在 cleanJsonText 前面添加 //languagejson 这个什么鬼这个是 IntelliJ IDEA 的一个特性你的 text block 还是有语义的如是一段HMTL、JSON、SQL 等添加这个后马上就代码提示啦。一般人我不告诉他 :) text block 还有一个小特性就是基本的模板特性支持你在text block中要引入一些上下文变量直接 %s 然后调用 formatted 方法就可以啦。 //languagehtmlString textBlock span stylecolor: greenHello %s/span;System.out.println(textBlock.formatted(nick)); Switch 提升 Arrow Labels 接入了 - switch 箭头不需要写那么多 break 啦代码如下 //legacyswitch (DayOfWeek.FRIDAY) {case MONDAY: {System.out.println(1);break;}case WEDNESDAY: {System.out.println(2);break;}default: {System.out.println(Unknown);}}//Arrow labelsswitch (DayOfWeek.FRIDAY) {case MONDAY, FRIDAY, SUNDAY - System.out.println(6);case TUESDAY - System.out.println(7);case THURSDAY, SATURDAY - System.out.println(8);case WEDNESDAY - System.out.println(9);} Switch Expressions 也就是 switch 可以有返回值啦代码如如下 //Yielding a valueint i2 switch (DayOfWeek.FRIDAY) {case MONDAY, FRIDAY, SUNDAY - 6;case TUESDAY - 7;case THURSDAY, SATURDAY - 8;case WEDNESDAY - 9;default - {yield 10;}}; 关键字 yield 表示 switch 表达式的返回值。 我想马上使用这些特性 你说的这么多都非常不错但是我们线上还是 Java 8 环境有什么用也就看看而已。不用担心有人也想到啦。 https://github.com/bsideup/jabel 就是这个项目支持将 JDK 12 的各种语法能够透明编译到 Java 8 的 VM 上也就是你现在用这些语法特性跑在 Java 8 上完全没有问题所以即便是 Java 8 的环境没有问题以上的特性都可以使用。 如何使用非常简单。 首先下载最新的 JDK如 JDK 13 然后在依赖中添加 jabel-java-plugin dependencygroupIdcom.github.bsideup.jabel/groupIdartifactIdjabel-javac-plugin/artifactIdversion0.2.0/version/dependency 然后调整一下 maven 的 compiler plugin将 source 设置为你想要的 Java 版本如 13 target 和 release 设置为 8 就可以啦。 IntelliJ IDEA 会自动识别也不需要调整。 plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource13/sourcetarget8/targetrelease8/release/configuration /plugin 这样你就可以愉快地使用介绍的特性啦。 总结 如果有一些特性没有整理而且非常有用的大家反馈一下如 API 的调整等方便后续同学参考一下。 原文链接 本文为云栖社区原创内容未经允许不得转载。
http://www.pierceye.com/news/568419/

相关文章:

  • 菏泽炫佑网站建设中国城乡建设部网站
  • 网站开发与移动互联自助建站的优点与缺点
  • 公司做网站的好处上海网站设计找哪家
  • 个人如果做网站赚钱吗WordPress 聊天小工具
  • 商城网站建设哪家便宜网络架构师和网络工程师区别
  • p2p网站建设 深圳广东手机网站建设品牌
  • 亚马逊网上商城是正品吗长沙seo计费管理
  • 东莞品牌网站建设多少钱网站设计有限公司怎么样
  • dedecms新网站 上传到万网的空间浦口区网站建站公司
  • 龙岗在线网站建设西安房产信息网
  • 如何建立公司企业网站大朗做网站的
  • 怎么做整蛊网站wordpress系统的特点
  • php网站开发视频教程浙江建设局网站
  • 温州seo顾问温州网站优化排名推广
  • qq空间怎么做网站wordpress 分类名
  • 外贸国际网站推广重庆律师网站
  • 唐山建设信息网站wordpress 首页显示产品
  • 建设网站的公司哪个济南兴田德润怎么联系重庆短视频培训
  • 营销型网站的建设方案企业网页设计作品分析
  • 网站建设的费用报价做网站销售这几天你有什么想法
  • 做箱包关注哪个网站类似建站之星网站
  • 口碑好网站建设报价wordpress 微博侧边栏
  • 长沙 建站优化花都区手机版网站建设
  • 网站自动弹窗代码国外哪些网站可以兼职做任务
  • 怎么查看网站服务器位置wordpress 数据表结构
  • 国外做家纺的网站有些网站开发人员工具无反应
  • 泉州做网站个人网站备案号可以做企业网站吗
  • 苏州姑苏区专业做网站国外购物网站建设
  • 蒙牛官网网站怎么做的爱站网备案查询
  • 天津市建设工程监理公司网站电商seo引流