2차원 배열 초기화 1
int[,] arr2Int = { { 1, 2, 3 }, { 4, 5, 6 } }; //3차원 배열의 경우는 int arr[,,]
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
Console.Write(arr2Int[i, j] + "\t");
}
Console.WriteLine();
}
출력
GetLength() 바깥쪽 0 안쪽 1 (2차원 배열)
for (int i = 0; i < arr2Int.GetLength(0); i++) {
for (int j = 0; j < arr2Int.GetLength(1); j++) {
Console.Write(arr2Int[i, j] + "\t");
}
Console.WriteLine();
}
2차원 배열 초기화 2
readonly (런타임(프로그램 실행 시점) 시점) , const(컴파일 시점)
상수 변수 (고정된 값 : 바뀌지 않음 ) 반드시 상수 값(스칼라)이 필요함
const int SIZE_ROW = 2; //행
const int SIZE_COL = 3; //열
int[,] arr2Int2 = new int[SIZE_ROW, SIZE_COL] { { 1, 2, 3 }, { 4, 5, 6 } };
출력
for (int i = 0; i < SIZE_ROW; i++) {
for (int j = 0; j < SIZE_COL; j++) {
Console.Write(arr2Int2[i, j] + "\t");
}
Console.WriteLine();
}
2차원 배열 초기화 3
string[][] arrStr = new string[2][];
//string[][] arrStr1 = new string[2][3]; --이렇게 쓸수는 없다
arrStr[0] = new string[] { "Kim", "Pack", "Hong" };
arrStr[1] = new string[] { "Lee" }; //가변적인 2차원 배열 형태
출력
for (int i = 0; i < arrStr.Length; i++) {
for (int j = 0; j < arrStr[i].Length; j++) {
Console.Write(arrStr[i][j] + "\t");
}
Console.WriteLine();
}
2차원 배열 초기화 4
int[][] arrInt4= new int[2][];
출력
for (int i = 0; i < arrInt4.Length; i++) {
arrInt4[i] = new int[i + 1];
for (int j = 0; j < arrInt4[i].Length; j++) {
arrInt4[i][j] = 10 + j;
Console.Write(arrInt4[i][j] + "\t");
}
Console.WriteLine();
}
예제 3행 4열로 바꾸기
int[][] arrInt5 = new int[3][];
for (int i = 0; i < arrInt5.Length; i++) {
arrInt5[i] = new int[i + 2];
for (int j = 0; j < arrInt5[i].Length; j++) {
arrInt5[i][j] = 10 + j;
Console.Write(arrInt5[i][j] + "\t");
}
Console.WriteLine();
}
int[][] arrInt6 = new int[3][];
for (int i = 0; i < arrInt6.Length; i++) {
arrInt6[i] = new int[4];
for (int j = 0; j < arrInt6[i].Length; j++) {
arrInt6[i][j] = 10 + j;
Console.Write(arrInt6[i][j] + "\t");
}
Console.WriteLine();
}
2차원 배열 foreach 사용
int [,]는 사용할 수 없다 c#만 가능
int[][] arr2Each = {
new int[] {1,2,3},
new int[] {4,5,6},
};
foreach (int[] arr in arr2Each) {
foreach(int n in arr) {
Console.Write(n + "\t");
}
Console.WriteLine();
'C# > C# Basic' 카테고리의 다른 글
C# Dictionary : 딕셔너리 (0) | 2022.12.08 |
---|---|
C# List : 리스트 (0) | 2022.12.07 |
C# Array : 1차원 배열 01 (0) | 2022.12.06 |
C# Loop : 반복문 02 (0) | 2022.12.04 |
C# Loop : 반복문 01 (0) | 2022.12.03 |