C#の配列クラスでGetLowerBoundメソッドを使う方法
C#のArrayクラスには、配列の指定した次元における下限(インデックスの最小値)を取得できるGetLowerBound()メソッドが用意されています。
通常の配列では下限は「0」ですが、このメソッドを使うことでプログラムから動的に確認できます。基本的な使い方は以下のとおりです。
arr.GetLowerBound(0).ToString()
引数には対象となる次元を指定します。0番目の次元(1次元配列の場合はその配列自体)の下限を取得するには「0」を渡します。
GetLowerBound()メソッドの使用例
次のサンプルコードでは、Array.CreateInstanceメソッドで文字列型の配列を作成し、各要素に値を設定した後、GetLowerBound()メソッドで下限を取得して表示しています。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace lower {
class Program {
static void Main(string[] args) {
Array arr = Array.CreateInstance(typeof(String), 3);
arr.SetValue("Car", 0);
arr.SetValue("Truck", 1);
arr.SetValue("Motorbike", 2);
Console.WriteLine("下限: {0}", arr.GetLowerBound(0).ToString());
Console.ReadLine();
}
}
}実行結果
下限: 0
補足ポイント
- 標準的なC#の配列はインデックスが必ず0から始まるため、GetLowerBound(0)は常に「0」を返します。
- 対になるメソッドとして、指定した次元の上限(最大インデックス)を取得する
GetUpperBound()メソッドがあります。 - 多次元配列の場合は、取得したい次元を引数に指定します。例えば2次元配列の2次元目なら
GetLowerBound(1)のように記述します。
-
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配列のすべての次元に含まれる要素の総数を、