JDK 考虑开始对字符串进行优化是从 Java 6 开始的。
从 JDK 6 update 21 版本更新开始,我们可以为 JVM 添加下面的参数:
-XX:+UseCompressedStrings
上面参数的主要目的就是将 String 存储使用的 char[] 数组修改为 byte[] 数组。
简单来说就是存储粒度更小,能够提供更多的空间利用率。
![](https://i-blog.csdnimg.cn/blog_migrate/55995c47aa811bf9d34090cc8c42a3db.png)
但是,这个参数在 JDK 7 后被移除了,主要原因可能是因为修改了存储结构导致的一些不可以预料的情况。
JDK 考虑开始对字符串进行优化是从 Java 6 开始的。
从 JDK 6 update 21 版本更新开始,我们可以为 JVM 添加下面的参数:
-XX:+UseCompressedStrings
上面参数的主要目的就是将 String 存储使用的 char[] 数组修改为 byte[] 数组。
简单来说就是存储粒度更小,能够提供更多的空间利用率。
但是,这个参数在 JDK 7 后被移除了,主要原因可能是因为修改了存储结构导致的一些不可以预料的情况。