質問

(C#の場合)ジャグ配列とは何ですか?どれ例、1つはそれを使用する必要があるとき....

役に立ちましたか?

解決

ジャグ配列は配列の配列である。

string[][] arrays = new string[5][];

、5つの異なる文字列配列のコレクションのそれぞれは、(彼らはまた、同じ長さかもしれないが、ポイントは何のの保証は、彼らがしていることがないです)長さが異なる可能性があります。

arrays[0] = new string[5];
arrays[1] = new string[100];
...

これは、それが各列が同じ数の列を有している意味、矩形で2次元配列と異なっている。

string[,] array = new string[3,5];

他のヒント

ジャグ配列は、任意の言語で同じですが、第二で、配列を超えた別の配列の長さを持つ2+次元アレイを使用していることがあります。

[0] - 0, 1, 2, 3, 4
[1] - 1, 2, 3
[2] - 5, 6, 7, 8, 9, 10
[3] - 1
[4] - 
[5] - 23, 4, 7, 8, 9, 12, 15, 14, 17, 18

最良の答えは、問題の所有者によって選ばれたが、それでも私はジャグ配列をより明確にするために、次のコードを提示したい。

されているが
using System;

class Program
{
static void Main()
 {
 // Declare local jagged array with 3 rows.
 int[][] jagged = new int[3][];

 // Create a new array in the jagged array, and assign it.
 jagged[0] = new int[2];
 jagged[0][0] = 1;
 jagged[0][1] = 2;

 // Set second row, initialized to zero.
 jagged[1] = new int[1];

 // Set third row, using array initializer.
 jagged[2] = new int[3] { 3, 4, 5 };

 // Print out all elements in the jagged array.
 for (int i = 0; i < jagged.Length; i++)
  {
    int[] innerArray = jagged[i];
    for (int a = 0; a < innerArray.Length; a++)
    {
    Console.Write(innerArray[a] + " ");
    }
    Console.WriteLine();
  }
 }
}

出力がされます。

1 2

0

3 4 5

ジャグアレイは可変長の行のデータを格納するのに使用されます。

より多くの情報のチェックについてはこのポストMSDNでのブログます。

あなたがここでより多くの情報を見つけることができます: http://msdn.microsoft.com /en-us/library/2s05feca.aspxする

またます:

ジャグ配列は、その要素が配列されている配列です。ジャグ配列の要素は、異なる寸法およびサイズのものとすることができます。ジャグ配列は、時々、「アレイのアレイ」と呼ばれます。以下の実施例は、初期化、宣言、及びアクセスはアレイのギザギザする方法を示します。

以下では、整数の単一次元配列され、それぞれが3つの要素を持つ単一次元配列の宣言である

jaggedArray[0] = new int[5];
jaggedArray[1] = new int[4];
jaggedArray[2] = new int[2];

または

jaggedArray[0] = new int[] { 1, 3, 5, 7, 9 };
jaggedArray[1] = new int[] { 0, 2, 4, 6 };
jaggedArray[2] = new int[] { 11, 22 };

ジャグ配列を使用すると、宣言時に行数を宣言していますが、各ジャグ配列内の列の数が異なるが適しでありたいときは、その平均値だけで、ユーザーの選択によっても、実行時に列の数を宣言するかものですその場合、

int[][] a = new int[6][];//its mean num of row is 6
        int choice;//thats i left on user choice that how many number of column in each row he wanna to declare

        for (int row = 0; row < a.Length; row++)
        {
           Console.WriteLine("pls enter number of colo in row {0}", row);
           choice = int.Parse(Console.ReadLine());
            a[row] = new int[choice];
            for (int col = 0; col < a[row].Length; col++)
            {
                a[row][col] = int.Parse(Console.ReadLine());
            }
        }

ジャグアレイ内に含まれる他の配列を持つ配列である。

ジャグ配列は、行の数が固定されているが、列の数が固定されていない配列である。

のコードウィンドウフォームアプリケーションのC#でジャグ配列のための

int[][] a = new int[3][];

a[0]=new int[5];
a[1]=new int[3];
a[2]=new int[1];

int i;

for(i = 0; i < 5; i++)
{
    a[0][i] = i;
    ListBox1.Items.Add(a[0][i].ToString());
}

for(i = 0; i < 3; i++)
{
    a[0][i] = i;
    ListBox1.Items.Add(a[0][i].ToString());
}

for(i = 0; i < 1; i++)
{
    a[0][i] = i;
    ListBox1.Items.Add(a[0][i].ToString());
}
あなたがいない行の上記のプログラムで見ることができるように 3に固定されていますが、列の数は固定されていません。列のだから我々が取ってきた三つの異なる値5、3と1本のコードで使用ListBox1キーワードは、我々はまたに使用されるボタンをクリックして、結果を表示するには、ウィンドウの形で使用することをリストボックスのためである、すなわちウィンドウのフォーム。ここで行わすべてのプログラミングは、ボタンの上にある。

ジャグ配列は、行の異なる異なる数の多次元配列である。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top