手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#中的位操作小结
C#中的位操作小结
摘要:位操作符是对数据按二进制位进行运算的操作符。位操作是其他很多语言都支持的操作,如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;

/*

* 1的二进制形式: 00000001

* 2的二进制形式: 00000010

* 4的二进制形式: 00000100

* 8的二进制形式: 00001000

* 16的二进制形式: 00010000

* 32的二进制形式: 00100000

* 64的二进制形式: 01000000

* 126的二进制形式:01111110

*/

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#中的yield关键字的使用方法介绍

C#中事件处理的个人体会

C#枚举中的位运算权限分配浅谈

C#中静态的深入理解

C#几种截取字符串的方法小结

C# 中文简体转繁体实现代码

C#数据库操作小结

C#将dll打包到程序中的具体实现

C#中方法的详细介绍

C#中日期时间的简单操作

精品推荐
分类导航