Java 9中的紧凑字符串是什么?

2023年 9月 11日 35.5k 0

Java 9中的紧凑字符串是什么?

自 Java 9 起,JVM 通过使用名为紧凑字符串的新功能来优化字符串。字符串可以表示为 byte[] 数组,而不是 char[] 数组。我们可以使用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
---------
}

// In Java 9
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

---------
}

登录后复制

以上就是Java 9中的紧凑字符串是什么?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论