multidimensional arrays
이 자습서에서는 예제를 통해 C #의 다차원 배열 및 들쭉날쭉 한 배열에 대한 모든 것을 설명합니다. 다차원 배열은 직사각형 배열이라고도합니다.
이전 튜토리얼에서 배열 및 단일 차원 배열에 대한 모든 것을 살펴 보았습니다.
이 자습서에서는 예제와 함께 C #의 Multi-Dimensional Arrays 및 Jagged Arrays에 대해 자세히 알아 봅니다.
학습 내용 :
C # 다차원 배열
다차원 배열은 직사각형 배열이라고도합니다. 다차원 배열은 2 차원 또는 3 차원 배열로 더 분류 될 수 있습니다.
데이터가 순차적 인 라이너 방식으로 저장되는 1 차원 배열과 달리, 다차원 배열은 데이터를 표 형식 즉, 행과 열의 형태로 저장합니다. 이 테이블 형식의 데이터 배열을 행렬이라고도합니다.
2 차원 배열
가장 간단한 형태의 다차원 배열은 2 차원 배열입니다. 여러 개의 1 차원 배열을 함께 쌓아 2 차원 배열을 형성 할 수 있습니다. 다음 그림은 개념을 더 잘 이해하는 데 도움이됩니다.
위 이미지는 2 차원 배열이 어떻게 보이는지 그래픽으로 표현한 것입니다. 행과 열이있는 것으로 표시됩니다. 따라서 2 차원 배열의 각 빌딩 블록은 행 번호와 열 번호를 나타내는 인덱스로 구성됩니다.
다차원 배열은 행, 열 등을 나타 내기 위해 대괄호 안에 쉼표를 포함한다는 점만 제외하면 1 차원 배열처럼 선언됩니다.
string[ , ] strArray = new string[2,2];
이제 2 차원 배열을 초기화하는 예를 살펴 보겠습니다.
2 차원 배열은 다음과 같이 선언됩니다.
string [ , ] fruitArray = new string [2,2] { {“apple” , “mango”} , /* values for row indexed by 0 */ {“orange”, “banana”} , /* values for row indexed by 1 */ };
예를 들어 내 배열 요소에 'i'행과 'j'열이 있으면 다음 인덱스 배열 [i, j]을 사용하여 액세스 할 수 있습니다.
string [ , ] fruitArray = new string [2,2] { {“apple” , “mango”} , /* values for row indexed by 0 */ {“orange”, “banana”} , /* values for row indexed by 1 */ }; /* output for the elements present in array*/ for (int i = 0; i <2; i++) { for (int j = 0; j < 2; j++) { Console.WriteLine('fruitArray[{0},{1}] = {2}', i, j, fruitArray[i,j]); } } Console.ReadKey();
다음 프로그램의 출력은 다음과 같습니다.
fruitArray [0,0] = 사과
fruitArray [0,1] = 망고
fruitArray [1.0] = 주황색
fruitArray [1,1] = 바나나
설명:
프로그램의 첫 번째 부분은 배열 선언입니다. 행 크기 2와 열 크기 2의 문자열 유형 배열을 선언했습니다. 다음 부분에서는 for 루프를 사용하여 배열에 액세스하려고했습니다.
값에 액세스하기 위해 중첩 for 루프를 사용했습니다. 외부 for 루프는 행 번호를 제공합니다. 즉, '0 번째'행으로 시작하여 앞으로 이동합니다. 내부 for 루프는 열 번호를 정의합니다. 첫 번째 for 루프가 각 행 번호를 전달하면 두 번째 for 루프가 열 번호를 할당하고 셀의 데이터에 액세스합니다.
C #의 들쭉날쭉 한 배열
C #에서 사용할 수있는 또 다른 유형의 배열은 Jagged Array입니다. 들쭉날쭉 한 배열은 배열로 구성된 배열로 정의 할 수 있습니다. 가변 배열은 다른 데이터 유형 대신 배열을 저장하는 데 사용됩니다.
들쭉날쭉 한 배열은 두 개의 대괄호를 사용하여 초기화 할 수 있습니다. 여기서 첫 번째 대괄호는 정의되는 배열의 크기를 나타내고 두 번째 대괄호는 들쭉날쭉 한 배열 내부에 저장 될 배열 차원을 나타냅니다.
들쭉날쭉 한 배열 선언
논의한 바와 같이 들쭉날쭉 한 배열은 다음 구문으로 초기화 할 수 있습니다.
string[ ][ ] stringArr = new string[2][ ];
가변 배열은 길이가 다른 여러 배열을 저장할 수 있습니다. 길이가 2 인 배열과 길이가 5 인 또 다른 배열을 선언 할 수 있으며이 두 가지 모두 동일한 들쭉날쭉 한 배열에 저장 될 수 있습니다.
들쭉날쭉 한 배열 내부 채우기 요소
먼저 들쭉날쭉 한 배열을 초기화합니다.
arrayJag[0] = new string [2] ; arrayJag[1] = new string [3] ;
위의 예에서는 대괄호 안에 정의 된 크기의 배열을 포함하는 인덱스 '0'및 '1'을 사용하여 문자열 유형의 들쭉날쭉 한 배열을 초기화했습니다. 0 번째 인덱스에는 길이 2의 문자열 유형 배열이 포함되고 인덱스 '1'에는 길이 3의 문자열 유형 배열이 포함됩니다.
이것이 우리가 배열을 초기화하는 방법입니다. 이제 초기화하고 들쭉날쭉 한 배열 안에 값을 넣어 보겠습니다.
arrayJag[0] = new string [2] {“apple”, “mango”}; arrayJag[1] = new string [3] {“orange”, “banana”, “guava”};
따라서 위의 예에서 보듯이 들쭉날쭉 한 배열도 값으로 선언 할 수 있습니다. 값을 추가하기 위해 값 목록과 함께 선언 된 들쭉날쭉 한 배열 뒤에 중괄호를 배치합니다.
선언하는 동안 들쭉날쭉 한 배열을 초기화 할 수도 있습니다.
다음 접근 방식을 사용하여 수행 할 수 있습니다.
string[][] jaggedArray = new string [2][] { new string[] {“apple”, “mango”}, new string[] {“orange”, “banana”, “guava”} };
위의 예에서 우리는 크기가 2 인 'jaggedArray'라는 이름의 Jagged 배열을 정의한 다음 중괄호 안에 구성 배열을 정의하고 선언했습니다.
가변 배열에서 데이터 검색
지금까지 Jagged 배열에 데이터를 넣는 방법을 배웠습니다. 이제 Jagged 배열에서 데이터를 검색하는 방법에 대해 설명합니다. 앞에서 설명한 것과 동일한 예제를 사용하고 해당 배열에서 모든 데이터를 검색해 보겠습니다.
string[][] jaggedArray = new string [2][] { new string[] {“apple”, “mango”}, new string[] {“orange”, “banana”, “guava”} }; /* retrieve value from each array element */ for (int i = 0; i 다음 프로그램의 출력은 다음과 같습니다.
사과 망고
오렌지 바나나 구아바
설명:
예를 들어 알파 테스트는 무엇입니까
요소를 가로 지르는 데 두 개의 for 루프를 사용했습니다. 첫 번째 for 루프는 Jagged 배열의 인덱스를 정의했습니다. 또 다른 중첩 for 루프를 사용하여 지정된 들쭉날쭉 한 배열 인덱스에있는 배열을 가로 질러 그 결과를 콘솔에 인쇄했습니다.
기억해야 할 사항 :
- 들쭉날쭉 한 배열은 배열의 배열입니다. 즉, 배열을 값으로 저장합니다.
- 지정된 인덱스가 존재하지 않으면 들쭉날쭉 한 배열에서 범위를 벗어난 예외가 발생합니다.
결론
이 자습서에서는 C #의 Jagged 및 Multidimensional 배열에 대해 배웠습니다. 2 차원 배열을 선언하고 초기화하는 방법을 배웠습니다. 또한 2 차원 배열에서 데이터를 검색하는 간단한 프로그램을 만들었습니다.
그런 다음 배열의 배열 인 Jagged 배열에 대해 자세히 논의했습니다.
들쭉날쭉 한 배열은 배열을 값으로 저장하기 때문에 그 자체로 고유합니다. 들쭉날쭉 한 배열은 다른 배열과 매우 유사하지만 저장하는 값의 유형 만 다릅니다.
추천 도서