このページは役に立ちましたか。
このページのコンテンツについての ご意見をお待ちしております
その他にご意見はありますか。
残り 1500 文字
エクスポート (0) 印刷
すべて展開
この記事は翻訳者によって翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。
訳文
原文

Array.GetLowerBound メソッド

Array 内の指定した次元の下限を取得します。

名前空間:  System
アセンブリ :  mscorlib (mscorlib.dll 内)

[SecuritySafeCriticalAttribute]
public int GetLowerBound(
	int dimension
)

パラメーター

dimension
型 : System.Int32
下限を指定する Array の 0 から始まる次元。

戻り値

型 : System.Int32
Array 内の指定した次元の下限。

例外条件
IndexOutOfRangeException

dimension が 0 未満です。

または

dimensionRank 以上です。

GetLowerBound(0)Array の最初の次元のインデックスの下限を返します。GetLowerBound(Rank - 1)Array の最後の次元の下限を返します。

このメソッドは O(1) 操作です。

プラットフォーム メモ

Silverlight for Windows Phone Silverlight for Windows Phone
渡されたディメンションが配列のランクと等しい場合は、Array.GetLowerBound(System.Int32)IndexOutOfRangeException をスローしません。
代わりに、下限値として 0 を返します。

GetLowerBound GetUpperBound を使用して 1 次元配列と多次元配列の 2 つの配列を初期化する方法を次のコード例に示します。

メモメモ :

この例を実行するには、「Demo メソッドと TextBlock コントロールを使用したコード例のビルド」を参照してください。


using System;
public class Example
{

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      // Creates a new one-dimensional Array of type Int32.
      Array my1DIntArray = Array.CreateInstance(typeof(Int32), 5);

      // Uses GetLowerBound and GetUpperBound in the for loop.
      for (int i = my1DIntArray.GetLowerBound(0); i <= my1DIntArray.GetUpperBound(0); i++)
         my1DIntArray.SetValue(i + 1, i);

      // Displays the bounds and values of the one-dimensional Array.
      outputBlock.Text += "One-dimensional Array:" + "\n";
      outputBlock.Text += "Rank\tLower\tUpper" + "\n";
      outputBlock.Text += String.Format("{0}\t{1}\t{2}", 0, my1DIntArray.GetLowerBound(0), my1DIntArray.GetUpperBound(0)) + "\n";
      outputBlock.Text += "Values:" + "\n";
      PrintValues(outputBlock, my1DIntArray);
      outputBlock.Text += "\n";

      // Creates a new three-dimensional Array of type Int32.
      Array my3DIntArray = Array.CreateInstance(typeof(Int32), 2, 3, 4);

      // Uses GetLowerBound and GetUpperBound in the for loop.
      for (int i = my3DIntArray.GetLowerBound(0); i <= my3DIntArray.GetUpperBound(0); i++)
         for (int j = my3DIntArray.GetLowerBound(1); j <= my3DIntArray.GetUpperBound(1); j++)
            for (int k = my3DIntArray.GetLowerBound(2); k <= my3DIntArray.GetUpperBound(2); k++)
            {
               my3DIntArray.SetValue((i * 100) + (j * 10) + k, i, j, k);
            }

      // Displays the bounds and values of the multidimensional Array.
      outputBlock.Text += "Multidimensional Array:" + "\n";
      outputBlock.Text += "Rank\tLower\tUpper" + "\n";
      for (int i = 0; i < my3DIntArray.Rank; i++)
         outputBlock.Text += String.Format("{0}\t{1}\t{2}", i, my3DIntArray.GetLowerBound(i), my3DIntArray.GetUpperBound(i)) + "\n";
      outputBlock.Text += "Values:" + "\n";
      PrintValues(outputBlock, my3DIntArray);
   }


   public static void PrintValues(System.Windows.Controls.TextBlock outputBlock, Array myArr)
   {
      System.Collections.IEnumerator myEnumerator = myArr.GetEnumerator();
      int i = 0;
      int cols = myArr.GetLength(myArr.Rank - 1);
      while (myEnumerator.MoveNext())
      {
         if (i < cols)
         {
            i++;
         }
         else
         {
            outputBlock.Text += "\n";
            i = 1;
         }
         outputBlock.Text += String.Format("\t{0}", myEnumerator.Current);
      }
      outputBlock.Text += "\n";
   }
}
/*
This code produces the following output.

One-dimensional Array:
Rank    Lower    Upper
0    0    4
Values:
    1    2    3    4    5

Multidimensional Array:
Rank    Lower    Upper
0    0    1
1    0    2
2    0    3
Values:
    0    1    2    3
    10    11    12    13
    20    21    22    23
    100    101    102    103
    110    111    112    113
    120    121    122    123
*/


Silverlight

サポート対象 : 5、4、3

Silverlight for Windows Phone

サポート対象 : Windows Phone OS 7.1、Windows Phone OS 7.0

XNA Framework

サポート対象 : Xbox 360、Windows Phone OS 7.0

Silverlight でサポートされるオペレーティング システムの詳細については、「サポートされているオペレーティング システムとブラウザー」を参照してください。

コミュニティの追加

追加
表示:
© 2015 Microsoft