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

C# 가변 배열(Jagged Array): 선언, 초기화, 접근 완전 가이드

C# 가변 배열 (Jagged Array)

이 튜토리얼에서는 C# 가변 배열을 배웁니다. 예제와 함께 선언, 초기화, 접근 방법을 다룹니다.

C#에서 가변 배열은 여러 배열을 요소로 가집니다. 하지만 다차원 배열과 달리, 가변 배열 안의 각 배열은 서로 다른 크기를 가질 수 있습니다.

가변 배열 학습 전 다음 선행 지식 필요:


C# 가변 배열 선언

가변 배열 선언 문법:

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

예시:

// 가변 배열 선언
int[ ][ ] jaggedArray = new int[2][ ];

여기서:

가변 배열의 각 요소도 배열이므로 개별 배열 크기 설정 가능. 예:

// 첫 번째 배열 크기 3
jaggedArray[0] = new int[3];
// 두 번째 배열 크기 2
jaggedArray[1] = new int[2];

가변 배열 초기화

가변 배열 초기화 여러 방법:

1. 인덱스로 초기화

선언 후 인덱스로 초기화:

// 첫 번째 배열 초기화
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 3;
jaggedArray[0][2] = 5;
// 두 번째 배열 초기화
jaggedArray[1][0] = 2;
jaggedArray[1][1] = 4;

여기서:

2. 크기 지정 없이 초기화

// 문자열 가변 배열 선언
int[ ][ ] jaggedArray = new int[2] [ ];
// 각 배열 초기화
jaggedArray[0] = new int[] {1, 3, 5};
jaggedArray[1] = new int[] {2, 4};

3. 선언과 동시에 초기화

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

가변 배열 요소 접근

인덱스로 요소 접근:

// 두 번째 배열 첫 요소
jaggedArray[1][0];
// 두 번째 배열 두 번째 요소
jaggedArray[1][1];
// 첫 번째 배열 두 번째 요소
jaggedArray[0][1];

예제: C# 가변 배열

using System;
namespace JaggedArray {
    class Program {
        static void Main(string[] args) {
            // 가변 배열 생성
            int[ ][ ] jaggedArray = { new int[] {1, 3, 5}, new int[] {2, 4}, };
            // 가변 배열 요소 출력
            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) {
            // 가변 배열 선언
            int[][] jaggedArray = new int[2][];
            // 가변 배열 요소 크기 설정
            jaggedArray[0] = new int[3];
            jaggedArray[1] = new int[2];
            // 첫 번째 배열 초기화
            jaggedArray[0][0] = 1;
            jaggedArray[0][1] = 3;
            jaggedArray[0][2] = 5;
            // 두 번째 배열 초기화
            jaggedArray[1][0] = 2;
            jaggedArray[1][1] = 2;
            // 외부 for 루프
            for (int i = 0; i < jaggedArray.Length; i++) {
                Console.Write("Element " + i + ": ");
                // 내부 for 루프
                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. 외부 for 루프

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) {
            // 2D 배열로 가변 배열 선언 및 초기화
            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# 배열 마스터하기: 선언, 초기화, 조작과 LINQ 연산
  2. C++ 배열을 함수에 전달하는 방법: 실전 가이드
  3. Java 배열 복사 기법: 대입, 루프, System.arraycopy, Arrays.copyOfRange 총정리
  4. C++ 배열 완전 정복: 선언, 초기화, 포인터 기법
  5. C++ 동적 배열 할당 완벽 가이드: new, delete, 실전 코드 예제
  6. C# 컬렉션(Collections) 마스터하기: 실전 예제로 배우는 유연한 데이터 관리
  7. Java 객체 배열 생성하기: 단계별 완벽 가이드
  8. MATLAB: 다차원 배열과 특수 배열 마스터하기
  9. 첨단 BGA 검사 기술로 신뢰성 높은 전자제품 구현
  10. 첨단 전자 혀 나노센서 어레이로 액체 생체분자 정밀 검출