同时使用&和〜运算符[重复]

问题描述 投票:1回答:1

此问题已经在这里有了答案:

我遇到了一些一起使用&~运算符的代码。代码将给定的二进制字符串作为其整数-在这种情况下为11100001001-然后执行此操作...

comp.setFlags(slot, (comp.getFlags(slot)&~Flags.READONLY));

我认为是将原始二进制字符串号作为其整数值,然后用另一个整数(我相信是1)对它进行&〜',但不确定。因此,基本上是:

int i = int_1 &~ int_2; 

并且新的二进制字符串是11100001000。

并且一旦该位反转,它就不会在对象(“插槽”)上的后续运行中作用于新的位字符串;

第一次:之前:11100001001之后:11100001000

第二次:之前:11100001000之后:11100001000

[所有后续时间:之前:11100001000之后:11100001000

这正是我需要执行的代码。我只是想了解&~的含义,它的定义以及如何将需要翻转的位置翻转一下,然后在该位置单独放置。]

我遇到了一些将&和〜运算符一起使用的代码。该代码将给定的二进制字符串作为其整数-在这种情况下为11100001001-然后执行此操作... comp.setFlags(slot,...

java bit-manipulation bitwise-operators tilde
1个回答
1
投票

这些是两个单独的运算符&~,而不是单个组合的&~运算符。认为是:

© www.soinside.com 2019 - 2024. All rights reserved.