您现在的位置是:网站首页> 新闻快讯> 软件使用 新闻快讯
jdk1 6(jdk16和jdk1.6)
小玉2023-07-05【软件使用】
219人已围观
简介JDK17新特性详解1、switch新增模式(预览版) 使用switch表达式和语句的模式匹配以及对模式语言的扩展来增强Java编程语言。将

jdk1 6(jdk16和jdk1.6)
最后更新:2023-07-05 01:18:07
推荐指数:
JDK17新特性详解1、switch新增模式(预览版) 使用switch表达式和语句的模式匹配以及对模式语言的扩展来增强Java编程语言。将模式匹配扩展到switch允许针对多个模式测试表达式,每个模式都有特定的操作,以便可以简洁安全地表达复杂的面向数据的查询。基于JDK16instanceof模式匹配(最终版)优化升级switch使用方法,先回忆下JDK16模式匹配(最终版)if(objinstanceofStrings){//直接使用s拼接字符串s+="heihei";}elseif(objinstanceofIntegeri){//直接使用i进行整型逻辑运算i+=1;}switch可直接用instanceof模式匹配选择(需要提前考虑null判断)Objecto;switch(o){casenull->System.out.println("首先判断对象是否为空,走空指针逻辑等后续逻辑");caseStrings->System.out.println("判断是否为字符串,s:"+s);caserecordp->System.out.println("判断是否为Record类型:"+p.toString());caseint[]arr->System.out.println("判断是否为数组,展示int数组的长度"+ia.length);caseIntegeri->System.out.println("判断是否为Intger对象,i:"+i);caseStudents->System.out.println("判断是否为具体学生对象,student:"+s.toString());caseUserCommonService->System.out.println("判断是否为普通用户实现类,然后走普通用户逻辑");caseUserVipService->System.out.println("判断是否为vip用户实现类,然后走vip用户逻辑");default->System.out.println("Somethingelse");}2、Realedclass密封类(最终版)密封类和接口限制哪些其他类或接口可以扩展或实现它们。publicsealedinterfaceShape{finalclassPlanetimplementsShape{}finalclassStarimplementsShape{}finalclassCometimplementsShape{}}publicabstractsealedclassTest{finalclassAextendsTest{}finalclassBextendsTest{}finalclassCextendsTest{}}3、随机数增强为伪随机数生成器(PRNG)提供新的接口类型和实现,包括可跳转的PRNG和额外的一类可拆分PRNG算法(LXM)。4、浮点运算更加严格简化数字敏感库开发,包括java.lang.Math和java.lang.StrictMath(对开发无实际意义)5、ParallelGC默认启用ParallelGC默认启用自适应并行处理,并行GC确定java.lang.ref.Reference在垃圾收集期间用于处理实例的最佳线程数。默认-XX:ParallelRedProcEnabled:true。在有多个线程可用于垃圾收集的机器上,明显改善了垃圾收集暂停的阶段,如果遇到垃圾收集暂停增加的情况,可以通过-XX:ParallelRedProcEnabled在命令行上指定到原始行为6、增强TreeMap 增强JDK-8176894(TreeMap没有对putIfAbsent()、computeIfAbsent()、computeIfPresent()、compute()方法的专门实现。默认实现经常导致两次树遍历,这会损害性能)....今天面试跪在了String类中。面试官问我String类中常用的方法有哪些,脑瘫的我只回答出来了5个[笑哭][笑哭][笑哭]于是我总结了一下String类常用的方法,下次再让我遇到问String类常用的方法有哪些,我就把下面这些甩给他。String常用的方法有哪些length():返回字符串的长度。isEmpty():判断字符串的长度是否等于0(value.length==0)charAt():返回指定索引下的字符。getBytes():字符串转字节。equals():判断两个字符串的值是否相同equalsIgnoreCase():比较两个字符串是否相等,不区分大小写。compareTo():比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的长度差值,如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方结束。startsWith():检测字符串是否以指定的前缀开始。endsWith():检测字符串是否以指定的后缀结束。hashCode():返回字符串的hashCode。indexOf():返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回-1。lastIndexOf():返回指定字符在此字符串中最后一次出现处的索引,如果此字符串中没有这样的字符,则返回-1。substring():截取字符串。concat():字符串拼接。replace():字符串替换。contains():判断当前字符串是否包含某个字符。split():字符串分割,返回一个数组。join():将集合或数组通过指定字符分割组合成字符串。toLowerCase():将所有字符转换为小写。toUpperCase():将所有字符转换为大写。trim():去除字符串前后空格。toCharArray():将此字符串转换为新的字符数组。format():使用指定的格式字符串和参数返回格式化字符串。valueOf():返回参数的字符串表示形式。intern():该方法的作用是把字符串加载到常量池中(jdk1.6常量池位于方法区,jdk1.7以后常量池位于堆)Java的SimpleDateFormat中什么是Year?什么是Weekyear?jDK6的SimpleDateFormat只有小“y”,没有大“Y”。JDK7开始引入了大“Y”,表示Weekyear。weekyear是说某一周只能属于一个年份。2021年12月31日不能既属于今年的最后一个星期,又是明年的第一个星期。对于一年的第一个weekyear有以下四种等效说法:1,本年度第一个星期四所在的星期2,1月4日所在的星期3,本年度第一个至少有4天在同一星期内的星期4,星期一在去年12月29日至今年1月4日以内的星期按照这个规范,2021年12月30日是星期四,满足是新一年的第一个星期。那就是说打从2021年12月26日(星期日,ISO8601中这是一周的第一天)开始,weekyear就已经是2022年了,新年已经到来了6天了!#我的2021##java#Java自带常用命令,在调式程序及解决生产问题经常用到1、gc:/opt/edas/jdk/java/bin/jstat-gcutil928392、gc1秒打印一次:/opt/edas/jdk/java/bin/jstat-gcutil92839100010003、jvm内存使用情况:/opt/edas/jdk/java/bin/jmap-heap1037624、内存里对象大小:/opt/edas/jdk/java/bin/jmap-histo1027755、导出整个JVM中内存信息:jmap-dump:format=b,file=2021.dump102775生产环境经常用到,先导出然后再开发电脑上分析问题6、线程情况:/opt/edas/jdk/java/bin/jstack-l1037627、打印GC日志:-Xms2048m-Xmx2048m-XX:ErrorFile=/home/admin/hs_err_pid%p.log-XX:+PrintGC-XX:+PrintGCDetails-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=/home/admin/logs生产环境常见设置,避免出现问题无从下手8、......希望做软件开发、系统架构的条友加个关注,一块沟通技术不孤独共进步记得给个关注[来看我][来看我][来看我],沟通不迷路@今日头条@头条上海@计算机世界【开源资讯】ApacheGeode1.13.2发布,数据管理平台ApacheGeode 是一个数据管理平台,可在广泛分布的云体系结构中提供对数据密集型应用程序的实时一致的访问。ApacheGeode将内存、CPU、网络资源以及可选的本地磁盘在多个进程间进行池化,以管理应用程序对象和行为。它使用动态复制和数据分区技术来实现高可用性、改进的性能、可伸缩性和容错能力。除了作为分布式数据容器之外,ApacheGeode还是一个内存数据管理系统,它提供可靠的异步事件通知和有保证的消息传递。1.13.2版本更新内容如下:1、修正了一个在极少数情况下可能导致Pdx损坏的竞争条件;2、提供在log4j2.xml中配置Geode附加器的能力;3、在Pulse查询中对日期进行本地化;4、改进了启动/关机;5、修正在极少数情况下tombstone永远不会过期的问题;6、修复重新平衡以在滚动升级期间正常运行;性能改进;1、将apachegeodedockerhub映像更改为基于BellSoft的LibericaJDK。
很赞哦! (0)
相关文章
文章评论
验证码: