C#/배열과 리스트

[C#] 배열의 개념

도도돋치 2025. 3. 26. 19:52
Contents 접기
728x90

배열이란?

배열(Array)이란 은 자료형을 가진 여러 개의 데이터를 하나의 변수처럼 관리할 수 있는 자료 구조이다.
 여러 개의 값을 저장할 수 있음
✔ 인덱스를 이용해 각 요소에 접근 가능
 0부터 시작하는 인덱스를 가짐

 

배열을 사용하는 이유

 배열 없이 여러 값을 저장하는 경우
int num1 = 10;
int num2 = 20;
int num3 = 30;

📌 변수를 하나씩 선언해야 하므로 비효율적

 

💡 배열을 사용하면?
int[] numbers = {10, 20, 30};

✅ 배열을 이용하면 데이터를 효율적으로 관리 가능

 

배열 선언 및 초기화

(1) 배열 선언

자료형[] 배열이름;

 

📝 예제

int[] numbers;

📌 int형 데이터를 저장하는 배열을 선언했지만, 아직 메모리를 할당하지 않았음


(2) 배열 선언 + 크기 지정

자료형[] 배열이름 = new 자료형[배열크기];

 

📝 예제

int[] arr = new int[5];  // 크기가 5인 int 배열 생성

📌 배열이 생성되지만, 초기값은 0으로 자동 설정


(3) 배열 선언 + 초기화

자료형[] 배열이름 = {값1, 값2, 값3, ...};

 

📝 예제

int[] arr = {1, 2, 3, 4, 5};

📌 배열의 크기는 자동으로 값의 개수에 맞게 설정됨

int[] arr = new int[] {1, 2, 3, 4, 5};

📌 new int[]를 명시적으로 써도 동일한 결과

 

배열 요소 접근

배열의 각 요소는 0부터 시작하는 인덱스를 통해 접근한다. (※ 1이아니고 0부터 시작함)

 

📝 예제

int[] arr = {10, 20, 30};

Console.WriteLine(arr[0]); // 10
Console.WriteLine(arr[1]); // 20
Console.WriteLine(arr[2]); // 30

📌 arr[0]은 첫 번째 요소, arr[1]은 두 번째 요소, arr[2]는 세 번째 요소

 

배열의 길이

배열의 길이는 Length를 사용해서 알 수 있다.

int[] item = { 100, 200, 300 };

for(int i=0; i<item.Length; i++)
{
	Console.WriteLine($"{i}번째 출력중");
}

🔹출력결과

0번째 출력중
1번째 출력중
2번째 출력중

📌 배열의 길이인 3만큼 반복하는 것을 확인할 수 있다.

 

다차원 배열

📝2차원배열 예제(게임map만들때 유리)

int[,] score = new int[2, 3]
{
    { 90, 80, 70 },
    { 85, 75, 65 }
};

🔹요소 접근 방법(특정 줄, 칸 값을 꺼낼 때는 이렇게 씀)

Console.WriteLine(score[1, 2]);  // 결과: 65

📌 1행 2열 값을 꺼내는 것


📝3차원배열 예제

int[,,] array3D = new int[2,3,4]
{
  {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}},
  {{13,14,15,16}, {17,18,19,20}, {21,22,23,24}}  
};

 

📖 정리

✔ 배열은 같은 자료형의 여러 값을 저장하는 자료 구조
✔ 배열 선언: 자료형[] 배열이름;
✔ 배열 생성: new 자료형[크기];
✔ 배열 초기화: {값1, 값2, ...};
인덱스(0부터 시작)를 이용해 요소에 접근

 

📍 배열을 사용하면 데이터를 효율적으로 관리할 수 있다.

728x90