美文网首页
7.Byte类源码解析

7.Byte类源码解析

作者: CNCF | 来源:发表于2018-08-09 15:13 被阅读0次

    1.

    前面两个,一个最大值,一个最小值,不多说,为什么是-128到127 应该不需要我解释了吧,第三个方法,是不是和Boolean中的类似,博主思前想后,想到了包装类型,这玩意儿应该就是为了这个东西准备的。

    2.

    byte实质是带符号的单字节整数,最高位是符号位,所以看到为什么toString方法后面转成了int类型,Integer中的toString方法

    3.

    内部私有静态类,里面它定义一个静态常量Byte数组,并初始化 大小256,然后为这个数组每个元素赋了值,博主思考了很久,觉得这货应该是一个缓存值,基本数据类型都有。

    4.

    这里可以看到两个构造函数,由于调用了parseByte方法,我就一起讲了,并且他还重载, 我就一起拿过来了,没有什么花头,String 转成Byte 底层实际上也就是先转成int 再转成Byte 。

    5.

    这三个valueOf 放一起讲,归根结底就是调的第一个方法,那么第一个方法到底做了什么事情?实际上就把b的值扔进了cache中,如果不需要新的Byte实例,则该方法通常优先于构造函数,因为所有字节值都被缓存,因此该方法可能会产生显着更好的空间和时间性能。

    6.

    将字符串解码为Byte类型,调用了Integer底层的decode方法。

    7.

    这里几个都是获取Byte的值,只是返回的类型都做了转化。

    8.

    不多说了

    9.

    byte的hashCode似乎没有什么特别的操作,直接就返回了byte转化成int的值。

    10.

    比较,直接比较value。

    11.

    比较,第一个方法,直接调的第二个方法,返回的是两个值的差。谁大谁小看结果正负就知道。

    12.

    第一个通过无符号转换将参数转换为整数。 第二个通过无符号转换将参数转换为long。 这两个是1.8新加入的方法。

    13.

    第一个是用来表示于二进制补码形式的byte值的比特数,第二个用来表示于二进制补码形式的byte值的字节数

    PS:哪里不对可以在评论中指出,我都会一个个看的,觉得少东西也可以评论中提出来,我会做补充。

    相关文章

      网友评论

          本文标题:7.Byte类源码解析

          本文链接:https://www.haomeiwen.com/subject/sluqbftx.html