Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/unicode.md
Original file line number Diff line number Diff line change
Expand Up @@ -1320,7 +1320,7 @@ Java 就是受到了 UTF-16 历史债影响,`char` 是 16 位的码位,而

> {{ icon.detail }} Java 的 `Character` 类型是一个 32 位的值,这个值包含了一个 Unicode 码位。`char` 类型是一个 16 位的值,它包含了一个 UTF-16 编码的码点。`String` 的 `charAt()` 方法返回的是 `char` 类型的码位(类似于字节),如果要获取 `Character` 类型的完整字符,必须使用 `codePointAt()` 方法。这是 Java 语言设计上的一个失误,已经无法改变。

而后续新出的 Kotlin 是 Java 的合法继承者,他果断放弃 UTF-16,加入了 UTF-32 阵营。可见,老软件坚持用 UTF-32 是因为他们积重难返,新软件再 UTF-16 就是自作孽了!
而后续新出的 Kotlin 是 Java 的合法继承者,他果断放弃 UTF-16,加入了 UTF-32 阵营。可见,老软件坚持用 UTF-16 是因为他们积重难返,新软件再用 UTF-16 就是自作孽了!

**总结:不要支持 UTF-16 阵营,除非你被迫维护史山。**

Expand Down