📘프로그래밍/C#

[C#] 02 배열

bohemdev1 2024. 10. 19. 00:23

정의

 

같은 데이터형 변수들의 집합

 

 

 

의의

 

기능을 추가하다 보면 같은 속성의 값을 동시에 여러 개 다루어야 할 때가 있습니다. 같은 속성의 값들을 일일이 선언하여 사용하는 것은 번거롭고 그 수가 늘어날 수록 관리가 힘들어 집니다.

// 예) 학생 100명의 점수 관리
int score1 = 90;
int score2 = 80;
int score3 = 70;
	:
int score100 = 60;

 

 

배열을 사용하면 성격이 비슷한 변수의 경우 한꺼번에 관리가 가능합니다.

 

 

 

기능

 

 

선언 방법

 

배열 선언 방법은 다음과 같습니다.

  1. 명시적 선언
  2. 암시적 선언
  3. 명시적 + 암시적 선언

 

명시적 선언

 

명시적 선언은 배열을 선언할 때 new 키워드를 사용하여 배열의 크기(요소 수)를 명시합니다. 배열을 선언하면서 값을 초기화하지 않은 배열 요소는 자동적으로 자료형의 초기값 을 갖습니다.

/* 형식 */
// 자료형[] 배열명 = new 자료형[요소수];
int[] arr = new int[10];

 

 

암시적 선언

 

암시적 선언은 배열을 선언할 때 배열에 저장되는 요소를 명시하여 배열의 크기를 암시합니다. 암시적 선언은 선언과 동시에 초기화 작업 이 필요합니다.

/* 형식 */
// 자료형[] 배열명 = { 값1, 값2, ··· };
int[] arr = { 10, 20, 30, 40, 50, 60 };

 

 

명시적 + 암시적 선언

 

명시적 + 암시적 선언은 new 키워드를 사용하되, 배열의 크기 설정 방법은 암시적 선언의 것을 따릅니다.

/* 형식 */
// 자료형[] 배열명 = new 자료형[] { 값1, 값2, ··· };
int[] arr = new int[] { 10, 20, 30, 40, 50, 60 };

 

 

 

변수 타입

 

배열의 변수 타입은 원본 데이터의 저장 공간을 참조하는 참조 타입(Reference Type) 입니다.

 

▶ 변수 타입의 종류

더보기

 

값 타입(Value Type)

  • 값 타입 변수 A에 변수 B를 저장할 경우 원본 데이터인 B의 값을 A의 저장 공간에 저장합니다.
  • 결과적으로 A와 B는 서로 다른 저장 공간을 갖습니다.
int A = 100;
int B = A;  
B = 99;
Debug.Log("A: " + A + " B: " + B);

/*
A: 100 B: 99
*/

 

참조 타입(Reference Type)

  • 참조 타입 변수 A에 변수 B를 저장할 경우 A는 원본 데이터가 위치한 B의 저장 공간을 참조합니다.
  • 결과적으로 A와 B는 같은 저장 공간을 참조합니다.
int[] A = { 100 };
int[] B = A;   
int[] C = A;
B[0] = 99;
Debug.Log("A[0]: " + A[0] + ", B[0]: " + B[0] + ", C[0]: " + C[0]);

/*
A[0]: 99, B[0]: 99, C[0]: 99
*/

 

 

 

사용 예시

 

배열에서 관리하는 요소가 늘어날 수록 반복문 을 통한 관리가 효과적입니다. 사용자는 시스템에서 제공하는 배열 크기 변수 Length 를 참조하여 사용할 수 있습니다.

// for문을 사용하여 배열 arr에 저장된 요소들을 차례대로 출력
int[] arr = { 10, 20, 30, 40, 50, 60 };
for (int i = 0; i < arr.Length; i++)
{
    Debug.Log(arr[i]);
}

/*
10
20
30
40
50
60
*/

 

 

 

 

 

'📘프로그래밍 > C#' 카테고리의 다른 글

[C#] 06 디폴트 매개변수  (0) 2024.10.28
[C#] 05 메서드 오버로딩  (0) 2024.10.28
[C#] 04 열거형  (0) 2024.10.26
[C#] 03 메서드  (0) 2024.10.24
[C#] 01 반복문  (0) 2024.10.19