不大明白。。。请指点一二!

来源:1-1 文件的编码

慕林溪

2016-02-26 08:44

为什么Integer.toHexString(b)改成Integer.toHexString(b & 0xff)就去掉了前面的24个0了?

写回答 关注

3回答

  • 神帝
    2016-02-26 09:18:18
    已采纳
    0xff二进制表示是11111111(前面24位为0),把b与0xff进行&运算(与0与为0、与1与为1),相当于把b的前24为全部置为0,不是去掉

    如果繁星能来...

    但是老师不是说本来前面就是24个0了吗,为什么还要变成0

    2016-05-15 18:24:36

    共 2 条回复 >

  • 咖喱炒饭
    2017-04-16 20:36:47

    0xff是8位的11111111,进行与运算相当于保留后8位,将前32位-8位=24位去除

  • wenqu
    2016-02-26 09:33:07

    只是通过与运算把前面的都变为0,

文件传输基础——Java IO流

为您介绍IO流的使用,以及对象的序列化和反序列化的内容

133754 学习 · 1030 问题

查看课程

相似问题