共用方式為


& 運算子 (C# 參考)

& 運算子可做為一元或二元運算子。

備註

一元 & 運算子會傳回運算元的位址 (需要 unsafe 的內容)。

二元 & 運算子已為整數類資料型別及 bool 預先定義其運算方式。 對於整數類資料型別,& 會針對其運算元進行邏輯位元 AND 運算。 對於 bool 運算元,& 會針對其運算元進行邏輯 AND 運算,也就是說,只有在兩個運算元皆為 true 時,結果才會是 true。

& 運算子會同時評估兩個運算子,不管第一個運算子其值為何。 例如:

int i = 0;
if (false & ++i == 1)
{
    // i is incremented, but the conditional
    // expression evaluates to false, so
    // this block does not execute.
}

使用者定義型別可多載二進位 & 運算子 (請參閱 operator)。 對整數類資料型別 (Integral Type) 執行的作業,通常也適用於列舉型別。 當多載二元 (Binary) 運算子時,同時隱含多載其對應的指派運算子 (若有的話)。

範例

class BitwiseAnd
{
    static void Main()
    {
        Console.WriteLine(true & false); // logical and
        Console.WriteLine(true & true);  // logical and
        Console.WriteLine("0x{0:x}", 0xf8 & 0x3f);  // bitwise and
    }
}
/*
Output:
False
True
0x38
*/

請參閱

參考

C# 運算子

概念

C# 程式設計手冊

其他資源

C# 參考