java9之前String底层数组的实现采用的是char数组

在这种方式下,每一个字符都将占用两个字节的空间。

Java9 String底层数组的变化

而在java9之后,String底层采用byte数组和编码标识来识别

Java9 String底层数组的变化 

coder的用法:

  1. 当检测到变量按照latin1或ISO进行标识时,会为其分配一个字节大小的空间;
  2. 当检测到变量按照utf-16进行标识时,会为其分配而两个字节大小的空间。

 同样地,与String相关的StringBuilder,StringBuffer底层都采用了byte[]来实现。

相关文章:

  • 2021-08-27
  • 2022-01-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-24
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-28
  • 2022-12-23
  • 2021-10-11
  • 2022-12-23
  • 2021-04-22
  • 2021-12-19
  • 2022-12-23
相关资源
相似解决方案