将字节序列转换为Java字符串的最快方法是什么?
具体来说,给定一个大字节数组,以及与ASCII字符对应的字节子序列,例如
byte[] bytes = { ... 65, 66, 67 ... };
以及子序列的开始和结束索引,所需的输出是String" ABC"。
当然,在子序列是Unicode字符串的UTF-8编码的一般情况下,它更复杂,但我编写的解析器99.9%的时间将处理ASCII,需要尽快解析它,所以我想为这种情况实现快速路径代码。
也许最明显的方式是:
StringBuilder stringBuilder = new StringBuilder(end - start);
for (int i = start; i < end; i++)
stringBuilder.append((char) bytes[i]);
return stringBuilder.toString();
但我想知道有更快的方法吗?