C# 기초 문법 - 배열
이 게시물은 C# 공부과정을 정리해놓은 것입니다 사용하는 툴은 Visual Studio 2022 입니다. 해당 툴을 사용하는 이유는 추후에 다룰 Unity에서 연계하여 사용하기 위함입니다.
C#에 대한 더 많은 포스팅은
CATEGORIES의C#을 확인하세요.
이번 포스팅은 1차원 배열만 다룬다. 다차원 배열과 가변 배열은 다른 포스팅에서 다룰 예정이다.
배열이란
배열이란 쉽게 말하면 같은 이름(변수명)의 같은 방(변수 타입)을 여러개 만들고 번호(Index)를 부여한 것입니다.
1
2
3
4
5
string study = "국어";
study = "수학"; //국어라는 값이 수학으로 덮어쓰여짐
string study = "영어" //이미 study라는 변수가 있어 에러가 발생함
같은 이름의 변수에는 값을 하나밖에 사용할수 없는데 같은 이름의 변수에 값을 여러개를 주고 싶을 때 사용하는게 배열입니다.
들어가기에 앞서 언어는 보통 값을 주지 않는다면 시작 숫자는 1이 아닌 0으로 시작한다.
배열의 사용법
생성
배열은 한가지가 아닌 여러개의 데이터가 들어갑니다. 그로 인해 선언 방식도 변수와는 다릅니다.
변수타입[] 변수명 = new 변수타입[들어갈 데이터의 갯수(Index)]
1
2
3
4
5
6
7
8
9
10
//변수를 만들고 바로 방을 만들기
string[] study = new string[5];
//변수만 만들고 나중에 방을 만들기
string[] study;//
study = new string[5];
//생성과 초기화를 같이 하기
string[] study= { "국어","수학","영어0","과학","한국사"};
데이터 저장
데이터를 저장하는 방법은 생성에 소개해드린 생성과 초기화하는 방법과 인덱스를 이용하는 방법이 있습니다.
배열이름[넣고하자는 Index번호] = 넣고자 하는 값;
1
2
3
4
5
//변수를 만들고 바로 방을 만들기
string[] study = new string[5];
study[0] = "국어"; // 첫번째 방에 저장
study[1] = "수학"; // 두번째 방에 저장
데이터 활용
1
2
3
4
5
//변수를 만들고 바로 방을 만들기
string[] study = new string[5];
study[0] = "국어"; // 첫번째 방에 저장
study[1] = "수학"; // 두번째 방에 저장
해당 배열에 들어있는 값을 출력해보겠습니다.
1
2
Console.WriteLine(study[0]); // `국어`를 출력
Console.WriteLine(study[1]); // `수학`을 출력
배열을 사용할 때는 []와 Index를 사용합니다.
이것을 접근한다라고 합니다.
배열의 값을 주지 않았을 경우에는 초기값이 들어간다.
숫자타입은 0, 문자타입은 null(비어있음) 출력된다.
null 출력시 실제로는 아무것도 출력이 안된다.
배열의 반복
배열애 접근하는 부분을 보면 Index가 0부터 1씩 차례로 증가하는걸 알수 있습니다.
이런 규칙은 반복문 포스팅에서 다룬적이 있습니다.
for, while
여기서 등장하는 study.Length의 .Length 해당 배열의 총 길이를 알려주는 명령어입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
string[] study= { "국어","수학","영어0","과학","한국사"};
//study.Length == 5;
//for문
for (int i = 0; i < study.Length; i++)
{
Console.WriteLine(study[i]);
}
/*
실행결과
국어
수학
영어
과학
한국사
*/
//while문
int j = 0;//조건용 변수 생성
while (j<study.Length)
{
Console.WriteLine(study[j]);
j++;//변수 값 증가
}
/*
실행결과
국어
수학
영어
과학
한국사
*/
foreach
for문 while문과 달리 조건식 없이 배열을 처음부터 끝까지 반복해줍니다.
foreach(변수타입 반복변수 in 배열){실행코드};
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
string[] study= { "국어","수학","영어0","과학","한국사"};
foreach (String subject in study)
{
Console.WriteLine(subject);
}
/*
실행결과
국어
수학
영어
과학
한국사
*/
1차원 배열에 대해 알아봤습니다.
다음 포스팅은 함수에 대해 알아보겠습니다.
