산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# 들쭉날쭉한 배열

C# 들쭉날쭉한 배열

이 자습서에서는 C# 지그재그 배열에 대해 배웁니다. 예제를 통해 들쭉날쭉한 배열을 선언, 초기화 및 액세스하는 방법을 배웁니다.

C#에서 들쭉날쭉한 배열은 요소로 여러 배열로 구성됩니다. 그러나 다차원 배열과 달리 들쭉날쭉한 배열 내부의 각 배열은 크기가 다를 수 있습니다.

들쭉날쭉한 배열에 대해 배우기 전에 다음을 확인하십시오.

<시간>

C# 가변 배열 선언

다음은 C#에서 들쭉날쭉한 배열을 선언하는 구문입니다.

dataType[ ][ ] nameOfArray = new dataType[rows][ ];

예를 들어 보겠습니다.

// declare jagged array
int[ ][ ] jaggedArray = new int[2][ ];

여기,

들쭉날쭉한 배열의 각 요소도 배열이라는 것을 알고 있으므로 개별 배열의 크기를 설정할 수 있습니다. 예를 들어,

// set size of the first array as 3
jaggedArray[0] = new int[3];

// set size of second array as 2
jaggedArray[1] = new int[2];
<시간>

지그재그 배열 초기화

들쭉날쭉한 배열을 초기화하는 다양한 방법이 있습니다. 예를 들어,

1. 색인 번호 사용

들쭉날쭉한 배열을 선언하면 인덱스 번호를 사용하여 초기화할 수 있습니다. 예를 들어,

// initialize the first array
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 3;
jaggedArray[0][2] = 5;

// initialize the second array
jaggedArray[1][0] = 2;
jaggedArray[1][1] = 4;

여기,

2. 배열 요소의 크기를 설정하지 않고 초기화

// declaring string jagged array
int[ ][ ] jaggedArray = new int[2] [ ];

// initialize each array
jaggedArray[0] = new int[] {1, 3, 5};
jaggedArray[1] = new int[] {2, 4};

3. Jagged Array 선언 중 초기화

int[ ][ ] jaggedArray = {
    new int[ ] {10, 20, 30},
    new int[ ] {11, 22},
    new int[ ] {88, 99}
};
<시간>

지그재그 배열의 요소 액세스

인덱스 번호를 사용하여 들쭉날쭉한 배열의 요소에 액세스할 수 있습니다. 예를 들어,

// access first element of second array
jaggedArray[1][0];

// access second element of the second array
jaggedArray[1][1];

// access second element of the first array
jaggedArray[0][1];
<시간>

예:C# 들쭉날쭉한 배열

using System;

namespace JaggedArray {
  class Program {
    static void Main(string[] args) {

     // create a jagged array
     int[ ][ ] jaggedArray = {
         new int[] {1, 3, 5},
         new int[] {2, 4},
      };

     // print elements of jagged array
     Console.WriteLine("jaggedArray[1][0]: " + jaggedArray[1][0]);
     Console.WriteLine("jaggedArray[1][1]: " + jaggedArray[1][1]);

     Console.WriteLine("jaggedArray[0][2]: " + jaggedArray[0][2]);

     Console.ReadLine();
    }    
  }
}

출력

jaggedArray[1][0]: 2
jaggedArray[1][1]: 4
jaggedArray[0][2]: 5

여기, 들쭉날쭉한 배열 내부

<시간>

지그재그 배열을 통한 반복

C#에서는 루프를 사용하여 들쭉날쭉한 배열의 각 요소를 반복할 수 있습니다. 예를 들어,

using System;

namespace JaggedArray {
  class Program {
    static void Main(string[] args) {

      // declare a jagged array
      int[][] jaggedArray = new int[2][];

      // set size of Jagged Array Elements
      jaggedArray[0] = new int[3];
      jaggedArray[1] = new int[2];

      // initialize the first array
      jaggedArray[0][0] = 1;
      jaggedArray[0][1] = 3;
      jaggedArray[0][2] = 5;

      // initialize the second array
      jaggedArray[1][0] = 2;
      jaggedArray[1][1] = 2;
      	 
      // outer for loop
      for (int i = 0; i < jaggedArray.Length; i++) {

        Console.Write("Element "+ i +": ");
        // inner for loop
        for (int j = 0; j < jaggedArray[i].Length; j++) {
          Console.Write(jaggedArray[i][j] + " ");
         }
      Console.WriteLine();
      }
      Console.ReadLine();
    } 
  }
}

출력

Element 0: 1 3 5
Element 1: 2 2

위의 예에서 우리는 들쭉날쭉한 배열을 반복하기 위해 중첩 for 루프를 사용했습니다. 여기,

1. 루프 외부

2. 내부 for 루프

<시간>

다차원 배열이 있는 들쭉날쭉한 배열

C#에서는 다차원 배열을 들쭉날쭉한 배열 요소로 사용할 수도 있습니다. 예를 들어,

int[ ][ , ] jaggedArrayTwoD = new int[2][ , ] {
    	new int[,] { {1, 8}, {6, 7} },
    	new int[,] { {0, 3}, {5, 6}, {9, 10} }
};

여기에서 들쭉날쭉한 배열의 각 요소는 다차원 배열입니다.

예를 들어 보겠습니다.

using System;

namespace JaggedArray  {
  class Program {
    static void Main(string[] args)  {
  	 
      // declare and initialize jagged array with 2D array
      int[][,] jaggedArray = new int[3][ , ]  {
          new int[ , ] { {1, 8}, {6, 7} },
          new int[ , ] { {0, 3}, {5, 6}, {9, 10} },
          new int[ , ] { {11, 23}, {100, 88}, {0, 10} }
      };

      Console.WriteLine(jaggedArray[0][0, 1]);
      Console.WriteLine(jaggedArray[1][2, 1]);
      Console.WriteLine(jaggedArray[2][1, 0]);

      Console.ReadLine();
    }    
  }
}

출력

8
10
100

위의 예에서 코드를 확인하세요.

jaggedArray[0][0, 1]

여기,


C 언어

  1. C# 배열
  2. C++ 프로그래밍에서 함수에 배열 전달
  3. 자바 복사 배열
  4. C++의 배열 | 선언 | 초기화 | 배열 예제에 대한 포인터
  5. 예제를 사용한 C++ 배열 동적 할당
  6. 예제가 있는 C# 컬렉션 자습서
  7. Java에서 객체 배열을 만드는 방법
  8. MATLAB - 배열
  9. 볼 그리드 어레이 검사 기법
  10. 전자 혀 나노센서 어레이