【发布时间】:2013-04-22 16:01:17
【问题描述】:
我是 Java 编程的初学者和自学者。
所以,我想知道String.length()和String.getBytes().length在Java中的区别。
什么比较适合检查字符串的长度?
【问题讨论】:
-
你的实验有什么建议?
-
你试过在 unicode 字符串上使用它吗?
-
string.length将给出字符串中的字符数,string.getBytes().length将给出字符串用于存储值的字节数。在正常情况下,每个字符可以占用 2 个字节来存储一个 unicode 值 -
@ArunPJohny:不,
string.length将返回字符串中“Unicode 代码单元”的数量。对于 ASCII 文本,它将计算字符数。对于任意 Unicode 文本,它......很复杂。有关丑陋的细节,请参阅 BeeOnRope 的答案。