当前位置: 首页 > 面试题库 >

Java将整数右移32

赫连法
2023-03-14
问题内容

我正在尝试将整数右移32,但结果是相同的数字。(例如5 >> 325。)

如果我尝试对Byte和Short执行相同的操作,则可以使用。例如,“(字节)5 >> 8”为0。

整数有什么问题?


问题答案:

JLS
15.19。移位运算符

…如果左侧操作数的提升类型为int,则 仅将右侧操作数的最低5位 用作移位距离。

因此转移32是无效的。



 类似资料:
  • 我有两个8位数的十六进制字符串。我需要对这两个十六进制字符串应用和操作,然后应用右移位到7位,并得到十进制值。我尝试将十六进制字符串转换为长度为4的字节数组(8*2=32位=4字节),并按相同的顺序对各个字节执行&操作,将结果保存到另一个长度为4的byre数组中。如何对这个字节数组进行位移位? 以及data1Bytes和data2Bytes之间的操作,该操作给出输出:bytearray1[0,0,

  • 问题内容: 我试图在Java代码中用php(来自Java语言的DataOutputStream)实现php中的DataOutputStream,它们会像这样>> 在PHP中,我只能像这样>> 我如何在php中做到这一点? 谢谢 问题答案: 您可以使用带符号的移位运算符来实现无符号的右移位运算符的行为,如下所示: 的值是零扩展的右移位位置。如果为正,则结果与; 相同。如果是负的,其结果是等于表达的,

  • 我正在使用添加元素的JscrollPane,当元素超过7个时,JscrollPane中的JScrollBar将被激活。我需要当我引入一个新元素时,滚动条向右移动 构造函数: 滚动条向右移动,但从来没有达到最大值,总是有多一点的距离滚动。 有人知道为什么会这样吗?我看到使用setValue和getMaximum将滚动条向右移动,但对我来说,它停留在靠近右边的地方,而不是右边。 下面是一张截图来看看。

  • 简单的问题:为什么如果我在Java中对字节变量应用无符号右移(也是短的),它就像int一样威胁它: 控制台输出:

  • 问题内容: 在将其标记为重复项之前,请阅读以下内容,并检查 我的代码 * 我更新的代码! 所以我的问题是,我必须实现Java / JavaScript’>>>’(无符号右移/零填充右移),但是我无法以完全相同的方式工作。 我选择了在SO和Web上找到的11个最有前途的实现(链接在代码中作为注释添加),并添加了一些测试用例。不幸的是 无 功能返回的Java / JS相同响应的测试ALL。 (也许其中

  • 问题内容: 我可以将JTextArea中的文本向右对齐(或通常更改文本对齐方式)吗? 我一直在搜索数小时,似乎其他人之前也曾问过这个问题,但没有好的答案(这确实有效)。 提前致谢! 问题答案: 尝试使用或代替。 有关更多信息,请查看此线程在JEditorPane中的文本垂直对齐 样例代码: 编辑 你可以试试