我有2个整数值,x和y。 x是2位,y是10位。我需要找到z,它是x和y的串联。 z是12位。如何在Java中做到这一点?如果您能解释其背后的逻辑,我也将不胜感激。 谢谢。
xiaoxi8892 回答:如何连接2个二进制数?
假设x
将成为结果的高阶部分:
int z = (x << 10) | y;
换句话说,y
被直接用作结果的第0到9位,我们将x
移位,使其值位于第10位和第11位。然后将这两个值合并。 / p>
(最低有效位从0开始编号)
我有2个整数值,x和y。 x是2位,y是10位。我需要找到z,它是x和y的串联。 z是12位。如何在Java中做到这一点?如果您能解释其背后的逻辑,我也将不胜感激。 谢谢。
假设x
将成为结果的高阶部分:
int z = (x << 10) | y;
换句话说,y
被直接用作结果的第0到9位,我们将x
移位,使其值位于第10位和第11位。然后将这两个值合并。 / p>
(最低有效位从0开始编号)