C# 二进制数使用按位与运算(&)来获取子集选中的值。

需求:
现在有一个二进制数整集 all,一个子集 sub,要求根据整集的值获取子集被选中的值是多少?

      //假设完整值是 15 ,1 2 4 8 的和

      int all = 15; //1 2 4 8 的和
      int sub = 7; //1 2 4 的和
          
      int result = all & sub; //输出7,选中1 2 4


      int all = 11; //1 2 8 的和
      int sub = 7; //1 2 4 的和
          
      int result = all & sub; //输出3,选中 1 2

结论:使用给定的值&子集的全值 就可以得到子集在全集中被选中的值的总和

posted @ 2024-04-30 16:39  清和时光  阅读(24)  评论(0编辑  收藏  举报