Array クラスのシグネチャは次のようになります。
[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class Array : ICloneable, IList, ICollection,
IEnumerable, IStructuralComparable, IStructuralEquatable
Array クラスのプロパティ
Array クラスは、配列に関するさまざまな情報を取得できる一連のプロパティを提供します。 Array クラスで一般的に使用されるプロパティを次の表に示します。
属性 | 説明 |
---|---|
IsFixedSize | 配列が固定サイズかどうかを確認します |
IsReadOnly | 配列が読み取り専用かどうかを確認する |
IsSynchronized | アレイへのアクセスが同期されているかどうかを確認します (スレッドセーフ) |
Length | 配列のすべての次元の要素の合計数を取得します |
LongLength | 配列のすべての次元の要素の合計数を取得し、64 ビット整数を返します。 |
Rank | 配列のランク (次元) を取得します。たとえば、1 次元配列は 1 を返し、2 次元配列は 2 を返します。 |
SyncRoot | 配列へのアクセスを同期するために使用できるオブジェクトを取得するために使用されます。 |
Array クラスのメソッド
属性に加えて、Array クラスには、次の表に示す一連のメソッドも提供されます。
方法 | 説明 |
---|---|
Clear(Array, Int32, Int32) | 配列内の指定された範囲の要素を、その要素が属する型のデフォルト値に設定します。 |
Copy(Array, Array, Int32) | 配列から指定された長さの要素をコピーし、コピーする長さを指定する 32 ビット整数を使用して、別の配列に貼り付けます (最初の要素から貼り付けます)。 |
CopyTo(Array, Int32) | 現在の 1 次元配列のすべての要素を、指定されたターゲット配列のインデックスから始まる指定された 1 次元配列にコピーします。インデックスは 32 ビット整数で指定されます。 |
GetLength | 配列の指定された次元の要素の数を取得し、32 ビット整数を返します。 |
GetLongLength | 配列の指定された次元の要素の数を取得し、64 ビット整数を返します。 |
GetLowerBound | 配列内の指定された次元の最初の要素のインデックスを取得します |
GetType | 現在のインスタンスのタイプを取得します (Object から継承) |
GetUpperBound | 配列内の指定された次元の最後の要素のインデックスを取得します |
GetValue(Int32) | 1次元配列内の指定された位置の値を取得します。 |
IndexOf(Array, Object) | 1 次元配列で指定されたオブジェクトを検索し、最初に出現したオブジェクトのインデックスを返します。 |
Reverse(Array) | 1D 配列全体の要素の順序を逆にします。 |
SetValue(Object, Int32) | 指定された要素の値を 1 次元配列に設定します。 |
Sort(Array) | 1次元配列内の要素をソートする |
ToString() | 現在のオブジェクトを表す文字列を返します (Object から継承) |
Array クラスのプロパティとメソッドについて詳しく知りたい場合は、C# の公式ドキュメントを参照してください。
[例] Array クラスのプロパティとメソッドの使用例を示します。
using System;
namespace it-kiso.com
{
class Demo
{
static void Main(string[] args)
{
// 配列を作成し、値を割り当てます
int[] arr = new int[6] {15, 33, 29, 55, 10, 11 };
// 空の配列を作成します
int[] arr2 = new int[6];
// 配列の長さを取得します
Console.WriteLine("配列arrの長さは:"+arr.Length);
// 配列を並べ替えます
Array.Sort(arr);
Console.Write("並べ替えた配列arrは:");
// 並べ替えたarrを出力します
PrintArray(arr);
// 配列要素のインデックスを検索します
Console.WriteLine("\n配列arrの中の値29の要素のインデックスは:"+Array.IndexOf(arr,29));
// arrをarr2にコピーします
Array.Copy(arr, arr2, arr.Length);
Console.Write("配列arr2を出力します:");
// arr2を出力します
PrintArray(arr2);
Array.Reverse(arr);
Console.Write("\narrを反転させた配列arr: ");
PrintArray(arr);
}
// 配列要素を走査する
static void PrintArray(int[] arr)
{
foreach (Object elem in arr)
{
Console.Write(elem+" ");
}
}
}
}