字节数组比较(使用简单的循环来检查每个索引)比使用更快String.equals(Object)吗?我不这么认为,但是有些人似乎更喜欢基于字节的操作而不是基于字符串的操作,包括字节数组相等检查.
在侧节点上,什么时候使用字节数组而不是字符串?您是否认为例如实施Levenshtein算法来计算两个字符串的"距离"的度量.如果它基于字节而不是字符串/字符,你认为它会加速计算吗?我不这么认为,但也许.
例如,它用于编码令牌,如https://github.com/BaseXdb/basex/blob/master/src/main/java/org/basex/util/Token.java
字符串不包含字节.它们包含字符.String等于显然比较两个字符串的字符(除非它们甚至没有相同的长度).由于String可以直接访问底层char数组,而外部代码没有,因此显然使用起来更快equals.
在处理二进制数据(二进制流,加密等)时使用字节数组是有意义的.处理文本数据时,使用Strings,StringBuilders,CharSequence或char数组会更好.这一切都取决于具体情况.