您的位置  > 互联网

从java8到java11究竟比8快了多少?

从2019年1月开始,JDK开始对Java SE 8以后的版本,准确的说是8u201/202以后的版本进行商业使用收费。 如果你用Java开发的功能是用于商业用途,并且不想花钱购买的话,可以免费使用的最新版本是8u201/202。 当然,如果你是个人客户或者个人开发者,你可以免费试用所有版本的JDK。

性能改进

仅切换到 Java 11 就有 16% 的改进,这种改进很可能是由于 Java 10 中引入了 JEP 307:G1 的 Full GC。

有关详细信息,请参阅Java 11 比 Java 8 快多少?查看此基准测试

从 Java 8 到 Java 11 的变化概述

注意:我们不会在这里介绍所有功能,而只会列出开发者最关心的一些变化。

紧凑字符串

从Java 9开始,数据加载已从char[]更改为byte[]。 紧凑字符串通常仅包含 Latin-1 字符。 这些字符可以节省一半的内存。

增强API

1.字符串增强@since 11

2. 收藏强化

从Java 9开始,jdk增加了集合(List、Set、Map)的方法。 它们用于创建不可变集合。

示例一:

示例二:

例三:

注意:使用and创建的集合是不可变集合,不能进行添加、删除、替换、排序等操作,否则是一个java.lang。 会报告异常。 使用Set.of()、Map.of()时不能出现重复元素不能出现重复键,否则会返回java.lang.tion。 。

3. 增强@since 9

这是Java 8中的一个特性,Java 9中添加了4个新方法:

3.1(Tt)

该方法可以接收null来创建一个空流

// 以前
Stream.of(null); //报错
// 现在
Stream.ofNullable(null);

3.2(