在C#中,沒(méi)有內(nèi)置的BitSet類(lèi)似于Java中的BitSet
using System;
class Program
{
static void Main()
{
int number = 5; // 二進(jìn)制表示為 0101
int bitIndex = 2;
// 位翻轉(zhuǎn)操作
number ^= (1<< bitIndex);
Console.WriteLine("After flipping the bit at index {0}: {1}", bitIndex, Convert.ToString(number, 2));
}
}
在這個(gè)例子中,我們首先定義了一個(gè)整數(shù)number
,它的二進(jìn)制表示為0101
。然后我們選擇要翻轉(zhuǎn)的位的索引bitIndex
,這里我們選擇索引為2的位。接下來(lái),我們使用異或操作符^
和左移操作符<<
來(lái)實(shí)現(xiàn)位翻轉(zhuǎn)。最后,我們將結(jié)果打印出來(lái)。
運(yùn)行這個(gè)程序,你會(huì)看到輸出結(jié)果為:
After flipping the bit at index 2: 7
這意味著原始數(shù)字的二進(jìn)制表示從0101
變?yōu)榱?code>0111,即十進(jìn)制的7。