程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> C#'~'按位取反運算符的使用,

C#'~'按位取反運算符的使用,

編輯:關於.NET

C#'~'按位取反運算符的使用,


按位取反運算符是按照二進制的每一位取反,比如byte類型,~0的結果就是255。

該功能可以在mask中做一些反轉操作

 

如下代碼,a存放了2,4,8三個值。用按位取反'~'運算符反轉

打印結果是 false,flase,false,true,true。Mask已經被反轉

class Program
{
    static void Main(string[] args)
    {
        byte a = 2 | 4 | 8;
        byte b = (byte)~a;

        Console.WriteLine((b & 2) == 2);
        Console.WriteLine((b & 4) == 4);
        Console.WriteLine((b & 8) == 8);

        Console.WriteLine((b & 16) == 16);
        Console.WriteLine((b & 32) == 32);

        Console.Read();
    }
}

 

比如在unity引擎中,該操作可以被使用在LayerMask上:

public class LayerMaskTest : MonoBehaviour
{
    public LayerMask layerMask;
    

    void OnEnable()
    {
        layerMask.value = ~layerMask.value;
    }
}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved