栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Java中使用位移

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Java中使用位移

(byte) (4 << 4) | 5

这会将值4左移,然后将低4位设置为值5。

  1. 00000100
    值(
    4
  2. 01000000
    左移4位(
    << 4
    )后
  3. 00000101
    另一个值(
    5
  4. 01000101``|
    #2和#3 的按位OR()的结果

由于操作数是

int
类型(即使它们是
byte
值,即使
int
操作员喜欢
|
对它们进行操作,它们也会被提升为类型),因此最终结果需要强制转换存储在中
byte

如果

byte
在任何按位运算中将值用作操作数,则对的隐式转换
int
会导致意外的结果。如果要将a
byte
视为在该转换中未签名,请使用按位AND(
&
):

byte b = -128; // The byte value 0x80, -128dint uint8 = b & 0xFF; // The int value 0x00000080, 128dint i = b; // The int value 0xFFFFFF80, -128dint uintr = (b & 0xFF) | 0x04; // 0x00000084int sintr = b | 0x04; // 0xFFFFFF84


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/402004.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号