C#でArray.Clearメソッドを使って配列の要素をゼロクリアする方法
C#のArray.Clearメソッドは、指定した範囲の配列要素をゼロ(既定値)にリセットするためのメソッドです。数値型の配列であれば全要素が0になり、参照型の配列であればnullに設定されます。
この記事では、Array.Clearメソッドの基本的な使い方を、実際のコード例とともにわかりやすく解説します。
Array.Clearメソッドの基本構文
まず、3つの要素を持つint型の配列を用意します。
int[] arr = new int[] { 11, 40, 20 };次に、Array.Clearメソッドを呼び出して、配列の全要素をゼロにクリアします。第1引数に対象の配列、第2引数に開始インデックス、第3引数にクリアする要素数を指定します。
Array.Clear(arr, 0, arr.Length);
上記のようにarr.Lengthを指定することで、配列全体を一度にクリアできます。
サンプルコード
以下は、Array.Clearメソッドを使用して配列をクリアする完全なサンプルプログラムです。
using System;
class Program {
static void Main() {
int[] arr = new int[] { 11, 40, 20 };
Console.WriteLine("配列(クリア前):");
foreach (int val in arr) {
Console.WriteLine(val);
}
// 配列の全要素をゼロにクリア
Array.Clear(arr, 0, arr.Length);
Console.WriteLine("配列(Clear使用後):");
foreach (int val in arr) {
Console.WriteLine(val);
}
}
}実行結果
配列(クリア前): 11 40 20 配列(Clear使用後): 0 0 0
ポイントまとめ
Array.Clear(配列, 開始インデックス, 要素数)の形式で呼び出す。- 配列全体をクリアしたい場合は
Array.Clear(arr, 0, arr.Length)を使う。 - 値型の配列は0(またはfalseなど既定値)、参照型の配列はnullにリセットされる。
このように、Array.Clearメソッドを使えば、ループ処理で各要素を手動で書き換えることなく、簡潔に配列を初期化することができます。
-
C#で配列の次元数(ランク)を定義・取得する方法
C#において、配列の次元数(ランク)を調べたい場合は、Arrayクラスが提供する Rank プロパティを使用します。このプロパティは、配列が持つ次元の数を整数値として返します。Rankプロパティの使い方次元数を取得するには、以下のように記述します。arr.Rankここで、arrは対象となる配列です。例えば、次のような2次元配列を考えてみましょう。int[] arr = new int[3,4];行数・列数を取得するにはGetLengthメソッドを使う配列の次元数だけでなく、各次元の要素数(行数や列数など)を取得したい場合は、GetLength メソッドを使用します。引数には対象の次元のインデッ
-
C#のArrayクラスのプロパティとは?主要プロパティと使い方を解説
C#におけるArrayクラスは、すべての配列の基底クラスであり、System名前空間で定義されています。このクラスには、配列のサイズや読み取り専用かどうか、次元数などの情報を取得するための便利なプロパティが多数用意されています。Arrayクラスの主なプロパティ一覧No.プロパティと説明1IsFixedSize配列が固定サイズであるかどうかを示す値を取得します。2IsReadOnly配列が読み取り専用であるかどうかを示す値を取得します。3Length配列のすべての次元に含まれる要素の総数を、32ビット整数(int)として取得します。4LongLength配列のすべての次元に含まれる要素の総数を、