为什么HashMap内部工作辅助变量是int,可以是byte数据类型

kri*_*hna 1 java variables int byte hashmap

HashMap内部有自己的静态最终变量.

        static final int DEFAULT_INITIAL_CAPACITY = 16;
Run Code Online (Sandbox Code Playgroud)

为什么他们不能使用byte数据类型而不是使用数据类型,int因为该值太小.

Sea*_*oyd 5

他们可以,但这将是一个微优化,并且权衡将是不太可读和可维护的代码(过早优化,任何人?).

这是一个静态的最终变量,因此每个类加载器只分配一次.我会说我们可以省去那些3(我在这里猜测)字节.