我阅读了以下关于收集及其周围的开销 由于我没有计算机科学背景,如果有人能够通过更深入的方式让一个外行人接听,我将不胜感激:
在32位平台上的典型8字符字符串中,25%是数据,75%是JVM开销(可理解)。
开销需要96个字符才能达到20%或更少 - 这是我无法理解的部分
它可能暗示更长的字符串更有效(并且对于集合来说是相同的)
怎么回事?
答案 0 :(得分:2)
这不是句子的意思。这意味着,如果8
个字符占字符串占用的总内存的25%
,则意味着开销大约为24
个字节。
因此,在96
个字符串中,您的开销是
24 / (24+96) = 20%
因此,较长的字符串在绝对意义上不是更有效,在更高效的意义上,无论字符串长度如何,固定开销与较短字符串相比对占用总内存的影响百分比较小。