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

在Java中获取int的特定位子集

海翼
2023-03-14
问题内容

我将如何获取Java中int的特定子集(例如5-10位)?

寻找一种可以传递特定位位置的方法。我不确定如何创建一个根据输入而变化的遮罩,或者即使那是应该如何做的也不确定。

我知道这是如何让前台说出一个int的10位:(我认为)int x = num >> 22;


问题答案:

假设您有一个数字n,并希望从ij(i = 5,j = 10)。

请注意,这i=0将为您提供最后一点

 int value = n & (((1 << (j-i)) - 1) << i );

会给你结果。

左侧很明显:您有一个值,并将在其上放置一个位掩码。

掩码的值是((1 << (j-i)) - 1) << i。它说:

  • 以一个1位(值0000000000000001
  • 左移j-i次数(值:2 ^(10-5)= 2 ^ 5 = 32 = 0000000000100000
  • 减去1(值:31 = 0000000000011111)-您是否看到最低位反转了?
  • 左移i次数(值:31 * 32 = 992 = 0000001111100000

因此,您已经获得了5-10位的位掩码(更确切地说,是从5到9,因为不包括第10位)。



 类似资料:
  • 问题内容: 因此,如果我有输入的整数: 我如何解析数字并获得1、2和8,并将它们分配给不同的变量? 谢谢! 问题答案: 这样做的低效方法是将整数转换为字符串,然后迭代字符串字符。 更有效的方法是:

  • 我正纠结于一个原生Android应用程序上的导航抽屉。

  • 问题内容: 我有一个与和一起进行的活动。我正在使用来水平显示图像列表。当我点击在图像上的在活动中应显示图像的大局观。到目前为止,一切正常。 现在,活动中还有两个:和。当我单击时,中的图像应左移,并且中的缩略图也应反映此更改。与的情况类似。 我能够旋转。但是,如何旋转缩略图?我如何获得的? 码: 活动XML: 我的活动代码: 我的RecyclerView自定义适配器: 问题答案: 我想您正在使用a

  • 我有一个带有和的activity。我正在使用水平显示图像列表。当我单击中的图像时,activity中的将显示该图像的更大图片。到目前为止一切正常。 现在activity中又多了两个:和。当我单击时,中的图像应该向左转,并且中的缩略图应该反映这个变化。的情况也类似。 我可以旋转。但是,如何在中旋转缩略图呢?如何获取的? 代码: activity XML: 我的activity代码: 我得Recycl

  • 我正在尝试检索与一个帖子相关联的所有图像。我能够返回ID并打印该ID,但当我尝试将其与get_posts()的参数一起添加时,它返回一个空数组。如果我不包含post_parent,它会给我媒体库中的所有图像,而不是我正在循环的文章的所有图像。我是不是在正确的水平上循环? 我尝试手动添加ID,但它仍然返回一个空数组。 我在等这篇文章的附件清单。我想从附件中获取一个图像并将其打印到页面。但我总是得到空

  • 在下面的代码中,如何获取被点击按钮的< code>Button位置? }