9.Float类源码解析

2018-08-14  本文已影响0人  CNCF

Float 和Double实际上一个模子印出来的,为什么这么说,往下看

1.

正无穷大,负无穷大,NaN值(非数字值,常值),最大正有限值,最小正常值,最小正非零值类型,最大精度,最小精度,float值的位数,float值的字节数,float的原生类,为装箱类型,value属性,和序列化id,这边就不多详细介绍了。

2.

三个构造函数,第三个调用了FloattingDecimal的方法,我们就不深挖了。

3.

toString方法,底层也是走FloatDecimal下的toJavaFormatString方法。

4.

返回十六进制字符串float形式,底层调用的是Double的toHexString方法,在上一篇中我有介绍过。

5.

获得Float的实例,第二个方法是优于构造函数使用。

6.

非空值,自己不等于自己

7.

判断是否是无穷数值,就是和POSITIIVE_INFINITY于NEGATIVE_INFINITY比价。

8.

是否是有限数值。

9.

这两个方法调用的方法,都是之前调用的方法。

10.

都是直接转化返回。

11.

获取float的hashCode值底层是将float的值转化为int。调用本地方法floatToRawIntBits.

12.

equals比较底层拿的还是value值的比较。

13.

与double的类似,直接比大小,后面的方法考虑到NaN的比较。

14.

加法直接加,max和min 都是调用的Math的方法。

上一篇下一篇

猜你喜欢

热点阅读