C#のBitArrayに含まれる要素数を取得する方法
C#のBitArrayに含まれる要素の数を取得するには、Countプロパティを使用します。このプロパティは、BitArray内に実際に格納されているビット要素の総数を返します。
Countプロパティとは
BitArray.Countは、コレクション内の要素数を表す整数値を返すプロパティです。BitArrayは作成時に指定したサイズ分のビットを保持するため、通常はコンストラクタで指定した値と同じ数が返されます。
サンプルコード1:Or演算後のBitArrayの要素数
以下の例では、2つのBitArrayに対してビット単位のOR演算を行い、その結果得られるBitArrayの要素数を確認しています。
using System;
using System.Collections;
public class Demo {
public static void Main() {
BitArray arr1 = new BitArray(5);
BitArray arr2 = new BitArray(5);
arr1[0] = false;
arr1[1] = false;
arr2[0] = false;
arr2[1] = true;
Console.WriteLine("BitArray1の要素...");
foreach (bool res in arr1) {
Console.WriteLine(res);
}
Console.WriteLine("\nBitArray2の要素...");
foreach (bool res in arr2) {
Console.WriteLine(res);
}
Console.WriteLine("\nビット単位のOR演算...");
IEnumerable demoEnum = arr1.Or(arr2);
foreach(Object ob in demoEnum) {
Console.WriteLine(ob);
}
Console.WriteLine("\n結果のBitArrayに含まれる要素数 = "+arr1.Count);
}
}出力結果
上記のコードを実行すると、次のような出力が得られます。
BitArray1の要素... False False False False False BitArray2の要素... False True False False False ビット単位のOR演算... False True False False False 結果のBitArrayに含まれる要素数 = 5
この例では、OR演算によってarr1の内容が更新され、その結果のBitArrayには5つの要素が含まれていることがCountプロパティで確認できます。
サンプルコード2:CopyToメソッドとの組み合わせ
次の例では、BitArrayの要素数を取得した後、CopyToメソッドを使ってbool型の配列にコピーしています。
using System;
using System.Collections;
public class Demo {
public static void Main() {
BitArray arr = new BitArray(2);
arr[0] = false;
arr[1] = true;
Console.WriteLine("BitArrayの要素...");
foreach (bool res in arr) {
Console.WriteLine(res);
}
Console.WriteLine("\nBitArrayに含まれる要素数 = "+arr.Count);
bool[] boolArr = new bool[2];
boolArr[0] = true;
boolArr[1] = false;
arr.CopyTo(boolArr, 0);
Console.WriteLine("\n配列...");
foreach(Object obj in boolArr) {
Console.WriteLine(obj);
}
}
}出力結果
上記のコードを実行すると、次のような出力が得られます。
BitArrayの要素... False True BitArrayに含まれる要素数 = 2 配列... False True
まとめ
BitArrayの要素数を取得したい場合は、Countプロパティを使うだけで簡単に確認できます。また、Lengthプロパティも同じ値を返すため、どちらを使用しても同様の結果が得られます。ビット演算や配列へのコピーなど、BitArrayを操作する場面で要素数を把握しておくと便利です。
-
C#のListDictionaryに含まれるキーと値のペアの数を取得する方法
C#のListDictionaryに含まれるキーと値のペアの数を取得するには、Countプロパティを使用します。Countプロパティは、コレクション内に現在格納されているキーと値のペアの総数をint型で返します。また、すべての要素を削除したい場合はClearメソッドを使います。Clearメソッドを実行すると、Countの値は0になります。コード例1using System; using System.Collections; using System.Collections.Specialized; public class Demo { public static void Main
-
【C#】LINQのTake()メソッドでシーケンスの先頭から指定した数の要素を取得する方法
C#では、LINQを活用することでコレクションの操作を簡潔に記述できます。本記事では、OrderByDescendingメソッドで配列を降順に並べ替え、Take()メソッドを使ってシーケンスの先頭から指定した数の要素を取得する方法を解説します。処理の流れ1. 配列を用意するまずは、対象となる整数型の配列を定義します。int[] prod = { 290, 340, 129, 540, 456, 898, 765, 789, 345};2. 降順に並べ替えて先頭の要素を取得する次に、AsQueryable()でクエリ可能な形式に変換し、OrderByDescendingで降順ソートを行います。そ