Nullable 형
null은 아무것도 없다, 즉 참조를 하지 않았다는 뜻이다.
값형은 원래 null을 가질 수 없다. 그러나 값형에 Nullable을 달면 null이라고 하는 값을 사용할 수 있게 된다. 주로 값형 변수가 null인지 아닌지를 구분해야 하는 경우에 사용된다.
// Nullable 형식 변수 선언
int? nullableInt = null;
double? nullableDouble = 3.14;
bool? nullableBool = true;
// 값 할당 및 접근
nullableInt = 10;
int intValue = nullableInt.Value;
// null 값 검사
if (nullableDouble.HasValue)
{
Console.WriteLine("nullableDouble 값: " + nullableDouble.Value);
}
else
{
Console.WriteLine("nullableDouble은 null입니다.");
}
// null 병합 연산자 사용
// nullableInt ?? 0과 같이 사용되며, nullableInt가 null이면 0을 반환합니다.
int nonNullableInt = nullableInt ?? 0;
Console.WriteLine("nonNullableInt 값: " + nonNullableInt);
문자열 빌더(StringBuilder)
- 문자열 조작
문자열들을 내부적인 버퍼에 넣어 놓고 받아서 조합만 해놨다가 필요할 때 문자열로 만들어준다.
Append(), Insert(), Replace(), Remove() 등 다양한 메서드를 치환할 수 있다.
- 가변성
내부 버퍼를 사용하여 크기가 동적으로 변할 수 있다. 추가했다 뺐다 바꾸기도 가능하며 추가적인 메모리 할당을 해서 가변적으로 길이를 조절할 수 있다.
- 효율적인 메모리 관리
주요 메서드
Append: 뒤에 문자열 추가
Insert: 지정한 위치에 문자열 삽입
Remove: 지정한 위치에서 문자열 제거
Replace: 문자열의 일부를 다른 문자열로 대체
Clear: StringBuilder의 내용을 모두 지운다.
StringBuilder sb = new StringBuilder();
// 문자열 추가
sb.Append("Hello");
sb.Append(" ");
sb.Append("World");
// 문자열 삽입
sb.Insert(5, ", ");
// 문자열 치환
sb.Replace("World", "C#");
// 문자열 삭제
sb.Remove(5, 2);
// 완성된 문자열 출력
string result = sb.ToString();
Console.WriteLine(result);
'부트캠프 > Study' 카테고리의 다른 글
<Unity> 입문 - 2D 게임 개발(1) (1) | 2023.11.24 |
---|---|
<프로젝트> 팀과제 TextRPG 계획(3) (1) | 2023.11.21 |
C# 문법 4강(3) - 델리게이트, 람다 및 LINQ (0) | 2023.11.16 |
C# 문법 4강(2) - 예외 처리 및 값형과 참조형 (1) | 2023.11.15 |
C# 문법 4강(1) - 인터페이스와 열거형 (0) | 2023.11.10 |