Java 9中的紧凑字符串是什么?
从Java9开始,JVM通过使用名为Compact Strings的新功能来优化字符串。代替使用char[] 数组,可以将字符串表示为byte[]数组。我们可以使用UTF-16或Latin-1 来为每个字符产生一个或两个字节。如果JVM检测到字符串仅包含 ISO-8859-1/Latin-1字符,则字符串内部每个字符使用一个字节。
可以用紧凑型字符串表示该字符串,也可以在创建该字符串时不检测该字符串。默认情况下,此功能已启用,并使用-XX:-CompactStrings关闭。它不会恢复为char[]实现,而是将所有字符串存储为UTF-16。
// In Java 8
public class String {
private final char[] value; // Stores characters in the string
---------
}
//在Java9中
public class String {
private final byte[] value; // Stores characters in the string
private final byte coder; // a flag whether to use 1 byte per character or 2 bytes per characters for this string
---------
}热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练