当前位置:首页 > TAG信息列表 > tohexstring方法是干嘛的toHexString为什么要和0XFF做与运算?介绍

tohexstring方法是干嘛的toHexString为什么要和0XFF做与运算?介绍

tohexstring方法是干嘛的 toHexString为什么要和0XFF做与运算?

tohexstring为什么要和0xff做与运算?

到hexstring

从字面上说,我想把它转换成十六进制。

十六进制的基本单位是四个二进制。如果这四个二进制是最大的,那么它们是1111,即=15

如果这个数的最后四位和15位用于位和运算,则得到一个结果,这个数是十六进制的一位

tohexstring方法是干嘛的 toHexString为什么要和0XFF做与运算?

!例如,18

18二进制表示为:

0001如果要将此二进制转换为十六进制,并对15执行位和运算,请首先取以下四位进行运算:

0010

&1111

-

0010result=2

然后向右移动4位,取0001和15表示&;行动

!0001

&1111

-]-

0001result=1

因此18的十六进制表达式为:0x12

注意:0x是固定格式

!正常情况下,相同的15用于操作。如果你写两个ff,我猜你可以计算一个char或short类型的数据

!原理是一样的

电脑编程,二进制、八进制、十六进制分别怎么算?

二进制到八进制需要记住对应关系:二进制000对应八进制0

二进制到八进制0

二进制到八进制0

0000

0011

0102

0113

1004

1015

1106

1117]]二进制到八进制的转换方法是取三位一体的方法,即从二进制的小数点为分界点,左(或右)每三位取一位,如下图所示:

010100.011101二进制数,将每三位数字按如下方式分组

010100.011101

分组后,根据二进制和八进制的对应关系,写出三位二进制,即得到八进制数,小数点的位置不变。

010对应2;100对应4;011对应3;101对应5。

二进制数:010100.011101转换为八进制是24.35。

二进制到十六进制是一组四位数

]位数不够(左或右)

如何将byte转为十进制字符串?

字节数组到十六进制字符串:公共类commonutil{/***字节数组到十六进制字符串*@paramsrc*@return*/publicstaticstringbytestohexstring(byte[]src){stringbuilderstringbuilder=newstringbuilder(),如果(src==null||src.长度<=0){returnnull}(inti=0i<src.长度i){intv=src[i]&;0xffstringhv=integer.tohexstring(v)如果(高压长度()<2){stringbuilder.append文件(0)}stringbuilder.append文件(hv)}返回字符串生成器.tostring()}}字节数组到十六进制字符数组字符串[]公共类commonutil{/***将字节数组转换为十六进制字符数组*@paramsrc*@return*/publicstaticstring[]bytestohexstrings(byte[]src){if(src==null||src.长度<=0){returnnull}string[]str=newstring[src.长度]对于(inti=0i<src.长度i){intv=src[i]&;0xffstringhv=integer.tohexstring(v)如果(高压长度()<2){str[i]=“0”}str[i]=hv}返回str}}

tohexstring方法是干嘛的javasubstringtohexstring方法


亮万家 中智号

  • 关注微信关注微信

猜你喜欢

微信公众号