[C#] 가변 배열이란 무엇입니까?


Answers

들쭉날쭉 한 배열은 모든 언어에서 동일하지만 두 번째 및 그 이후의 배열에 서로 다른 배열 길이의 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
Question

가변 배열 (C #에서)이란 무엇입니까? 모든 예제와 언제 사용해야합니까?




가변 배열은 다른 배열이 포함 된 배열입니다.

가변 배열은 행 수는 고정되어 있지만 열 수는 고정되어 있지 않은 배열입니다.

창 양식 응용 프로그램에 대한 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의 3 가지 다른 값을 취했습니다.이 코드에서 사용 된 ListBox1 키워드는 윈도우 폼에서 버튼의 클릭으로 결과를보기 위해 사용할리스트 박스를위한 것입니다. 창 형태. 여기에서 수행되는 모든 프로그래밍은 버튼에 있습니다.




가장 좋은 대답은 질문 소유자에 의해 선택되었지만 여전히 jagged 배열을보다 명확하게하기 위해 다음 코드를 제시하고자합니다.

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 블로그에서이 게시물을 확인하십시오.