我始终注意良好的
性能和干净的
代码.
我试图抓住是否有一个具有150个字符的密钥的HashMap是合理的.
> HashMap键的长度有不成体的法律吗?
>使用字符串键可以说是150个字符,这被认为是坏习惯吗?
>它是否影响性能?在哪个长度?
不是真的,150个字符String是相对微不足道的计算一个hashCode.
话虽如此,在这样的情况下,我建议你测试一下!
创建一个填充HashMap的例程,例如,在这里插入一个代表使用场景随机值的大小,其中5个字符串作为键.测量需要多长时间然后对15个字符键执行相同操作,看看它是如何缩放的.
此外,Java中的字符串是不可变的,这意味着可以为存储在字符串常量池中的每个字符串缓存hashCode,并且在同一个String对象上调用hashCode时不需要重新计算.
这意味着尽管您在创建地图时计算较大的哈希码,但在访问时,其中许多已经被预先计算和缓存,从而使原始字符串的大小更不相关.