qq_ForeverLove_2

在计算机底层中,int占2字节或4字节。一个字节补码表示范围恰好是-128~127。所以,这个缓存范围是不是和这个也有关系?

2020-01-31
2
1
回复 2
明明如月 回复 qq_ForeverLove_2

Java 基本类型中整数占 4 个字节,范围是 -2^31 到 2^31-1。 整数缓存的范围是JLS 的要求,也体现了提高性能的常见思想:空间换时间。 可参考 java.lang.Integer.IntegerCache 的注释。 Java开发涉及自动拆箱和装箱,而比较常用的数字范围是 -128 到 127。 如果这段整数自动装箱不复用已经缓存的对象,会造成没必要的资源消耗,但是自动装箱所有整数范围的对象又没有必要。

2020-02-01
Echo月 回复 qq_ForeverLove_2

我第一反应也是这个。。。不过想了想int是4个字节,也就是32位,这个范围也就是前8位二进制补码的范围,但是好像真没啥关系,找不到啥联系。可能真的就是因为这个范围比较常用吧。?

2020-02-02
没有更多内容
取消 回复 发送