Java 整数间的除法运算如何保留所有小数位?
因为在Java中,由运算结果,由被运算数的最高数据类型决定,也就是说:整数之间的运算,数据类型都为int类型,所以,返回的结果也为int类型。
如果我们想要返回完整的运算结果 ,我们就需要将其中一个的数据类型转换成double类型或者float类型,而不是只改变接收运算结果的数据类型!
例:double a = 55/Double.valueOf(5)
1000==1000为false,100==100为true
IntegerCache.java缓存了-128到127之间的整型对象
所以声明 int a = 100时,内部:Integer i = Integer.valueOf(100);
直接返回了缓存的实例
缓存的原因:(猜测)小整型使用率比大整型使用率高,可以减少潜在的内存占用