83
string[][] Tablero = new string[3][3];

情報を保存するには、3x3の配列を配置する必要があります。これをC#で宣言するにはどうすればよいですか?

4

12 に答える 12

114
string[,] Tablero = new string[3,3];

次のように、配列初期化構文を使用して同じ行でインスタンス化することもできます。

string[,] Tablero = new string[3, 3] {{"a","b","c"},
                                      {"d","e","f"}, 
                                      {"g","h","i"} };
于 2010-09-28T15:07:52.690 に答える
57

あなたはおそらくこれが欲しいでしょう:

string[,] Tablero = new string[3,3];

これにより、すべての行が同じ長さの行列のような配列が作成されます。

サンプルの配列は、いわゆるジャグ配列、つまり要素のサイズが異なる可能性のある配列の配列です。ジャグ配列は別の方法で作成する必要があります。

string[][] Tablero = new string[3][];
for (int i = 0; i < Tablero.GetLength(0); i++)
{
    Tablero[i] = new string[3];
}

イニシャライザを使用して、配列要素にデータを入力することもできます。

string[,] Tablero = new string[,]
{
    {"1.1", "1.2", "1.3"},
    {"2.1", "2.2", "2.3"},
    {"3.1", "3.2", "3.3"}
};

ジャグ配列の場合:

string[][] Tablero = new string[][]
{
    new string[] {"1.1", "1.2"},
    new string[] {"2.1", "2.2", "2.3", "2.4"},
    new string[] {"3.1", "3.2", "3.3"}
};
于 2010-09-28T15:08:13.513 に答える
17

ジャグ配列を宣言しました。このような種類の配列は、すべての次元で異なるサイズを持つことができます。例えば:

string[][] jaggedStrings =  {
new string[] {"x","y","z"},
new string[] {"x","y"},
new string[] {"x"}
};

あなたの場合、通常の配列が必要です。上記の回答を参照してください。 ジャグ配列の詳細

于 2010-09-28T15:13:30.193 に答える
12

私はあなたがこれを探していると思います:

        string[,] Tablero = new string[3,3];

ジャグ配列の構文は次のとおりです。

        string[][] Tablero = new string[3][];
        for (int ix = 0; ix < 3; ++ix) {
            Tablero[ix] = new string[3];
        }
于 2010-09-28T15:08:46.897 に答える
10

C#には、とと呼ばれる2種類の多次元配列がMultidimensionalありJaggedます。

多次元の場合、次の方法で実行できます。

string [、] multi = new string [3、3];

ジャグ配列の場合は、もう少しコードを記述する必要があります。

string[][] jagged = new string[3][];
            for (int i = 0; i < jagged.Length; i++)
            {
                jagged[i] = new string[3];
            }

要するに、ジャグ配列はより高速で直感的な構文を持っています。詳細については、このStackoverflowの質問を参照してください。

于 2013-10-13T13:59:10.577 に答える
9

これを試して :

string[,] myArray = new string[3,3];

http://msdn.microsoft.com/en-us/library/2yd9wwz4.aspxをご覧ください

于 2010-09-28T15:08:01.643 に答える
6
string[,] Tablero = new string[3,3];
于 2010-09-28T15:08:47.213 に答える
6

多次元配列を作成しようとしているときは、次のように宣言にコンマを追加するだけです。

string[,] tablero = new string[3,3].
于 2010-09-28T15:09:17.897 に答える
6

string[][]は2次元配列ではなく、配列の配列(ジャグ配列)です。それは何か違う。

2次元配列を宣言するには、次の構文を使用します。

string[,] tablero = new string[3, 3];

本当にジャグ配列が必要な場合は、次のように初期化する必要があります。

string[][] tablero = new string[][] { new string[3], 
                                      new string[3], 
                                      new string[3] };
于 2010-09-28T15:11:46.143 に答える
6

3x3(多次元)配列は、次のように初期化することもできます(すでに宣言しています)。

string[,] Tablero =  {
                        { "a", "b", "c" },
                        { "d", "e", "f" }, 
                        { "g", "h", "i"} 
                     };
于 2013-10-13T13:51:28.757 に答える
3

以下のコードを書くこともできます。

Array lbl_array = Array.CreateInstance(typeof(string), i, j);

ここで、「i」は行数、「j」は列数です。'typeof(..)'メソッドを使用すると、配列のタイプ(int、string、double)を選択できます。

于 2014-10-05T11:39:39.107 に答える
-1

ここには、C#での配列の操作に関する多くの例があります。

これがお役に立てば幸いです。

ありがとう、ダミアン

于 2010-09-28T15:09:21.110 に答える