게임개발 캠프 9일차

IIRU·2026년 5월 27일

배열

arr선언

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

b에 arr을 넣어주면 참조형식이기 때문에
b[0]에 11을 넣어주게 되면 arr[0]의 값이 바뀌게 된다.

int[] b = arr;
b[0] = 11;
Console.WriteLine(arr[0]);

배열의 한계

  1. 크기를 바꿀 수 없다.
  2. 한번에 초기화가 어렵다.
  3. 순서를 바꿀 때 연산량이 많다.

이차원배열

int[,] c = new int[5, 5]; //둘다 가능하지만 이게 정답

초기화 방법

//이차원배열의 초기화
c[0, 0] = 1;
c[0, 1] = 2;
c[0, 2] = 3;

가변배열

int[][] a = new int[5][]; //배열안에 크기가 다른 배열을 넣을 수 있음
a[0] = new int[1]; //가변배열이라고 함.

정렬

int[] tArr = new int[5] { 3, 7, 5, 1, 4 };

배열이 선언되어 있을 때

Array.Sort(tArr);

1, 3, 4, 5 ,7 로 오름차순으로 배열이 정렬된다.

Array.Reverse(tArr);

7, 5, 4, 3, 1 로 내림차순으로 배열이 정렬된다.
이건 정렬된 배열을 반대로 바꿔준 것이다.

StringBuilder

StringBuilder sb = new StringBuilder();

위와 같이 선언을 할 수 있다.

//100칸짜리 capacity를 확보
StringBuilder sb = new StringBuilder(100);

StringBuilder도 16바이트를 기본으로 확보하도록 되어있지만 16바이트가 넘어가면 32바이트로 늘어난다.(2배씩 증가 다음은 64바이트)
위 코드 처럼 미리 확보할 수도 있으니 참고.

sb.Append("Hello");
sb.AppendLine("world");

Append는 sb에 문자열을 붙이는 함수다.
AppendLine은 sb에 문자열을 붙이고 줄바꿈까지 붙여주는 함수다.

sb.Insert(5, "C#");

Insert는 sb안에 있는 문자열 5번째 위치에 "C#"을 넣어주는 함수다.

sb.Replace("Hello", "Test");

Replace는 sb에서 "Hello"를 찾아서 "Test"로 바꿔준다.

sb.Remove(0, 4);

Remove는 0번째 위치부터 3번째 위치까지 삭제해주는 함수다.


번외

문자열의 숫자를 추출하고 싶을 경우.

int num = 0;
string str2 = "123";
num = int.Parse(str2);
float.Parse(str2);
double.Parse(str2);

float도 되고 다른 자료형도 된다.

만약에 str2에 문자가 있다면 에러가 나게 된다.
그걸 방지하기 위해서
TryParse를 쓰는데 사용법은 아래와 같다.

bool isNum = int.TryParse(str2, out int num2);

TryParse는 bool형태를 반환하기 때문에
true / false가 나온다.

뒤에 out int num2 라고 쓰여져 있는데 num2에는 숫자로 바꾸는데에 성공했다면 num2에 int값이 들어간다는 의미다.

profile
초보 개발자 블로그입니다!

0개의 댓글