0XFF
Posted keep going!~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了0XFF相关的知识,希望对你有一定的参考价值。
0xFF = 00000000000000000000000011111111
也就是说 0xFF 代表了一个 byte 位全为 1,-1的补码(数据)。
数值和数据是两个不同的概念。数值表示一个数的大小,而数据就是补码(因为计算机中是以补码形式存在的)。
byte b = -1; //表示在计算机中真实的数据值(即补码)11111111
int a = b & 0xFF;//11111111 & 11111111 =00000....11111111,而且就看成了是其补码了,编译器会以这个二进制转换成十进制输出,所以a = 255
而:
byte b=-1;
int a = b = -1 = 11111111111111111111111111111111;
前者保持了数据不变,数值从-1变成了255;
后者保持了数值不变,数据从11111111变成了1111111111111111111111111.。。。。
一般用于我们做小基本数据类型转大基本数据类型. 例如我们需要序列化及反序列化 int 数据
以上是关于0XFF的主要内容,如果未能解决你的问题,请参考以下文章