게임 개발_HISTORY

C# STUDY_TIL251004 [배열과 컬렉션] 본문

Development In Unity/Study : C#

C# STUDY_TIL251004 [배열과 컬렉션]

EVANJ 2025. 10. 4. 21:57

📝 학습 요약

  • 배열과 컬렉션

🧩 학습 내용

✔️For 문에서 Lenght

▫️Lenght가 필요한 경우
For 루프를 사용하여 배열의 인덱스에 직접 접근하거나, 배열의 특정 범위까지만 반복하고 싶을 때 Lenght는 루프의 종료 조건을 설정하는데 필수적입니다.

string[] fruits = { "Apple", "Banana", "Orange", "Grape" };
// 배열의 모든 요소를 순회하며 출력 (Length를 사용하여 반복 횟수 지정)
for (int i = 0; i < fruits.Length; i++) 
{
    Console.WriteLine($"과일: {fruits[i]}"); 
}

 

▫️Lenght가 필요하지 않는 경우

특정 조건에 따라 일부 요소만 처리할 때 (예: 첫 2개만 처리)

string[] fruits = { "Apple", "Banana", "Orange", "Grape" };
for (int i = 0; i < 2; i++) 
{
    Console.WriteLine($"첫 두 과일: {fruits[i]}");
}

Foreach문과 List를 사용할 

string[] colors = { "Red", "Green", "Blue" };

// foreach를 사용하여 모든 색상을 순회하며 출력 (Length 사용하지 않음)
foreach (string color in colors)
{
    Console.WriteLine($"색상: {color}");
}

// List<T>와 같은 다른 컬렉션에서도 동일하게 작동
List<int> numbers = new List<int> { 10, 20, 30 };
foreach (int num in numbers)
{
    Console.WriteLine($"숫자: {num}");
}

 

✔️ 배열 입력 요소

배열을 한 줄로 선언 및 초기화
데이터_유형[] 배열_이름 = new 데이터_유형[크기];

예시로 int[, ] map = new int[5, 5]  를 분해해서 설명하면
int : 이 배열에 저장될 요소들의 데이터 타입이 정수임을 나타낸다.

[,]  : 이부분은 이 배열이 2차원 배열임을 나타낸다. 콤마의 갯수가 차원을 의마하며, 한개의 콤마는 2차원 배열을 뜻한다.

e.g ) []는 1차원 배열, [, , ]은 3차원 배열

map : 2차원 배열에 붙여진 이름

new : 새로운 객체 또는 배열 인스턴스를 생성할 때 사용하는 키워드

int[5,5] : 메모리상에 int 타입의 요소를 담을 수 있는 5행 5열 크기의 2차원 배열을 생

 

 

✔️ 컬렉션

List를 사용할 때 For 문을 사용하게 될 경우 조건 안에 Lenght 대신 count를 사용해야 한다.

Lenght는 배열에만 있는 속성이다. 배열은 선언될 때 크기가 고정되며, Lenght는 이 고정된 크기, 즉 배열의 전체 요소 개수를 반환한다.

Count는 List<T>, Dictionary<Tkey, Tvalue>, HashSet<T> 등 대부분의 .NET 컬렉션 클래스에 있는 속성이다. 이들은 동적으로 크기가 변할 수 있으며, 현재 컬렉션에 실제로 저장되어 있는 요소의 개수를 반환한다.

따라서 배열과 List의 가장 큰 차이점은 크기의 변동성이다.

 

 

💡 키보드 특수문자 영문 이름 / 한글 이름 (명칭)