PR

 TureまたはFalseのいずれかを要素に持つ配列を扱うには,BitArrayクラスを利用する。各要素の値はビット値で保持されるため,容量が小さくて済む。

サンプルコードを見る


名前空間
System.Collections
対応バージョン
.NET Framework 2.0,1.1,1.0
.NET Compact Framework 2.0,1.0
主なプロパティ
Count
BitArrayオブジェクトに格納されている要素の数を取得する

IsReadOnly
BitArrayオブジェクトへのアクセスが同期されている(スレッド・セーフである)かどうかを示す値を取得する。アクセスが同期されている(スレッド・セーフである)場合はTrue,それ以外の場合はFalseを返す。デフォルトはFalseである。

IsSynchronized
BitArrayオブジェクトへのアクセスが同期されている(スレッド・セーフである)かどうかを示す値を取得する。アクセスが同期されている(スレッド・セーフである)場合はTrue,それ以外の場合はFalseを返す。デフォルトはFalseである

Item
指定したインデックスにあるBoolean値(TrueまたはFalseのいずれか)を取得または設定する。C#言語ではインデクサとして働き,[ ]にインデックスを指定することで,その要素を取得できる。インデックスは0から始まる整数値である。負の値,または要素数以上のインデックスを与えると,ArgumentOutOfRangeException例外が発生する。

Length
BitArrayオブジェクトの要素数を取得または設定する。Lengthプロパティは,Countプロパティと同じ値を返す。ただし,Lengthプロパティは特定の値に設定できるが,Countプロパティは読み取り専用である。Lengthプロパティに,Countプロパティよりも小さい値を設定した場合は,BitArrayオブジェクトの長さ要素数はLengthプロパティの値に切り詰められる。また,Lengthプロパティに,Countプロパティよりも大きい値を設定した場合は要素数が増え,新しい要素にFalseが格納される。

主なメソッド
And
このBitArrayオブジェクトに対して,引数に指定した別のBitArrayオブジェクトと,対応する要素ごとにAND演算を実行する。このBitArrayオブジェクトの各要素に演算結果が格納され,このBitArrayオブジェクトが戻り値としても返る。引数に指定したBitArrayオブジェクトがnull参照だった場合は,ArgumentNullException例外が発生する。引数に指定したBitArrayオブジェクトの要素数が,このBitArrayオブジェクトの要素数と異なる場合は,ArgumentException例外が発生する。

Clone
BitArrayオブジェクトの簡易コピーを作成する。簡易コピーによってコピーされるのはBitArrayオブジェクトの要素だけである。BitArrayオブジェクトの各要素が参照しているオブジェクトはコピーされない。つまり,コピーされた新しいBitArrayオブジェクトの要素の参照先は,元のBitArrayオブジェクトの要素の参照先と同じオブジェクトになる。

CopyTo
BitArrayオブジェクトのすべての要素,または一部の要素を,1次元配列にコピーする。コピー元のBitArrayオブジェクトの要素数が,コピー先の配列に格納できる要素の数を超えている場合,ArgumentException例外が発生する。

Get
BitArrayオブジェクトの指定したインデックスの位置にあるビット値を取得する。指定したインデックスが負の値か,ArrayListBitArrayの要素数よりも大きい場合は,ArgumentOutOfRangeException例外が発生する。

Not
BitArrayオブジェクトのすべての要素の値を反転する。すなわち,元のBitArrayオブジェクトの要素がTrueであればFalseに,FalseであればTureになる。その結果のBitArrayオブジェクトが,戻り値としても返る。

Or
このBitArrayオブジェクトに対して,引数に指定した別のBitArrayオブジェクトと,対応する要素ごとにOR演算を実行する。このBitArrayオブジェクトの各要素に演算結果が格納され,このBitArrayオブジェクトが戻り値としても返る。引数に指定したBitArrayオブジェクトがnull参照だった場合は,ArgumentNullException例外が発生する。引数に指定したBitArrayオブジェクトの要素数が,このBitArrayオブジェクトの要素数と異なる場合は,ArgumentException例外が発生する。

Set
BitArrayオブジェクトの指定したインデックスの要素に,指定した値を設定する。指定したインデックスが負の値か,ArrayListBitArrayの要素数よりも大きい場合は,ArgumentOutOfRangeException例外が発生する。

SetAll
BitArrayオブジェクト内のすべての要素に,引数に指定した値を設定する。

Xor
このBitArrayオブジェクトに対して,引数に指定した別のBitArrayオブジェクトと,対応する要素ごとにXOR演算を実行する。このBitArrayオブジェクトの各要素に演算結果が格納され,このBitArrayオブジェクトが戻り値としても返る。引数に指定したBitArrayオブジェクトがnull参照だった場合は,ArgumentNullException例外が発生する。引数に指定したBitArrayオブジェクトの要素数が,このBitArrayオブジェクトの要素数と異なる場合は,ArgumentException例外が発生する。