java
标准化、规范化
java代码风格
【目录】java
编程-java8
编程-java9
编程-java-见过的异常
gradle
编程-java21
编程-java23
编程-java17
编程-java11
【目录】java-web-其它框架
java-vertx
quarkus
javalin
solon
Helidon
【目录】spring家族
spring
springcloud + nacos
consul
springboot启动流程
springboot使用及原理
springcloud
优化springboot
【java高级】
java-多线程-问题记录
java高级-ArrayList
java高级-HashMap
jdk源码解析-TreeMap红黑树
java对象占用多少字节
juc(并发)
ThreadPoolExecutor中ctl变量的理解
ThreadPoolExecutor分析
JVM(java虚拟机)
jvm学习路线
jvm
Java启动参数
debug
java-debug-arthas
java-debug-jdb
高并发/高性能/高可用
设计代码或编写代码时应该考虑的
如何发现系统中的瓶颈?
场景分析
mysql
mysql explain
mysql主从
mysql常见异常
方法论
工作中遇到的问题记录
代码优化
学习的思路
产品
本文档使用 MrDoc 发布
-
+
首页
编程-java11
# Java 11 新特性 ## Java 11 概述 ### jdk 11在 2018年9 月 26 日 发布。这是 Java 大版本周期变化后的第一个长期支持版本 需要登录:https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html https://www.injdk.cn/ http://www.codebaoku.com/jdk/jdk-index.html 国内下载地址 - 已失效 windows <https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/11/jdk/x64/windows/OpenJDK11U-jdk_x64_windows_hotspot_11.0.12_7.zip> - 已失效 linux <https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/11/jdk/x64/linux/OpenJDK11U-jdk_x64_linux_hotspot_11.0.12_7.tar.gz> - https://repo.huaweicloud.com/java/jdk/ ### 局部类型推断 ```java var str = "helloworld"; System.out.println(str); ``` 在类中的成员变量(也叫属性)不可以使用var来定义。 个人体会是在lambda中使用。实际编码中不建议使用。 ### 集合 创建新集合 ```java List.of("hello","world","java"); ``` ### Stream中的新API #### takeWhile() 该方法会从流中一直获取判定器为真的元素,一旦遇到元素为假,就终止处理 ```java Stream<Integer> stream = Stream.of(1, 3, 2, 5, 6, 7); Stream stream2 = stream.takeWhile(t -> t % 2 != 0); stream2.forEach(System.out::println); ``` 这段程序的运行结果: ```text 1 3 ``` #### dropWhile() 那么这方法和takeWhile()方法相反,它会从流中一直丢弃判定器为真的元素,一旦遇到元素为假,就终止处理 ```java Stream<Integer> stream = Stream.of(1, 3, 2, 5, 6, 7); Stream stream2 = stream.dropWhile(t -> t % 2 != 0); stream2.forEach(System.out::println); ``` 所以上面程序段的执行结果为: ```text 2 5 6 7 ``` ### 字符串中的新API ```java str.isBlank() 判断字符串中的字符是否都为空白 str.strip() 去除字符串首尾的空白 str.stripTrailing() 去除字符串尾部的空白 str.stripLeading() 去除字符串首部的空白 str.repeat() 复制字符串,可以传入一个int类型值来控制复制次数 ``` ### Epsilon垃圾收集器 JDK上对这个特性的描述是:开发一个处理内存分配但不实现任何实际内存回收机制的GC,一旦可用堆内存用完,JVM就会退出。 ### ZGC垃圾回收器 有人说这是JDK11最为瞩目的特性,没有之一,是最重磅的升级,那么ZGC的优势在哪里呢? - GC暂停时间不会超过10毫秒 - 既能处理几百兆的小堆,也能处理几个T的大堆 - 和G1相比,应用吞吐能力不会下降超过15% - 为未来的GC功能和利用colord指针以及Load barriers优化奠定了基础 ZGC是一个并发、基于region、压缩型的垃圾收集器,只有root扫描阶段会STW(strop the world,停止所有线程),因此ZGC的停顿时间不会随着堆的增长和存活对象的增长而变长。 用法:-XX:UnlockExperimentalVMOptions -XX:+UseZGC ### Flight Recorder
我是张三
2024年11月8日 16:38
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
eblog
Markdown文件
分享
链接
类型
密码
更新密码