欢迎来到山村网

C#中的位操作

2019-03-02 09:46:59浏览:778 来源:山村网   
核心摘要:  位操作符是对数据按二进制位进行运算的操作符。位操作是其他很多语言都支持的操作,如C、C++和Java等,C#也不例外支持位操作

  位操作符是对数据按二进制位进行运算的操作符。位操作是其他很多语言都支持的操作,如C、C++和Java等,C#也不例外支持位操作。注意位操作支持的数据类型是基本数据类型,如byte、short、char、int、long等,C#支持的位操作有如下几种:

  按位与 &

  按位或 |

  按位取反 ~

  左移 <<

  右移 >>

  异或^

  在C#中位操作同C的位操作没有什么区别,位操作的速度相对较快,而且如果熟练的话,处理起来也相对方便,特别是在一些权限等相关的设置中,比如:用1、2、4、8、16、32、64分别代表查看、添加、编辑、修改、删除、审批等权限值的时候,如果某个用户的最终权限是多种权限值的叠加,用位操作来判断是否具有某种权限是相当方便的了。

  举例说明:

  using System;

  public class BitAction

  {

  public static void Main(string[] args)

  {

  int[] power = new int[] { 1, 2, 4, 8, 16, 32, 64 };

  int value = 126;

  

  for (int i = 0; i < power.Length; i++)

  {

  if ((value & power[i]) != 0)

  {

  Console.WriteLine("有power[{0}]={1}所代表的权限", i, power[i]);

  }

  }

  Console.WriteLine("按位与:126&4={0}", value & 4);

  Console.WriteLine("按位或:126|4={0}", value | 4);

  Console.WriteLine("左移:126<<4={0}", value << 4);

  Console.WriteLine("右移:126>>4={0}", value >> 4);

  Console.WriteLine("异或:126^4={0}", value ^ 4);

  Console.WriteLine("按位取反:~126={0}", ~value);

  Console.ReadLine();

  }

  }

(责任编辑:豆豆)
下一篇:

C#文件路径操作总结

上一篇:

c# 获取字符串的字节数

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com