231106_ Nullable

Minsang Kim·2023년 11월 6일
0

TIL

목록 보기
39/41

내 인생은 Nullable을 알기 전과 후로 나뉜다.

Nullable

Nullable Type은 Null을 값으로 가질 수 없는 데이터의 타입을 Null을 가질 수 있는 타입으로 만들도록 선언해주는 것.

그럼 Null을 값으로 가질 수 없는 데이터 타입에는 무엇이 있을까 ?
대표적으로 int, double, float, bool, struct 들이 있다.
이것들에 값이 없다를 표현하기 위해 사용하는 것이다.

Nullable을 사용한 코드를 .ARABOZA

int?[] arr = new int?[10];

arr[0]=10;
arr[2]=11;
arr[4]=12;
arr[5]=13;

foreach(var num in arr){ //var 대신 int?으로 사용가능하다.
 if(num.HasValue)
     Console.WriteLine($"num = {num.Value}");  // num = 10, num = 11, num = 12, num = 13
}

이거는 클래스라 널러블안해줘도 됨. 근데 널러블처럼 코드 간결하게 수정가능.

if (CurrentSlave != null)
{
	equipRenderer.sprite = slave.CurrentEquip.ArmedSprite;
}

이랬던 코드가

equipRenderer.sprite = slave.CurrentEquip?.ArmedSprite;

주의할점 : Nullable은 중복 사용 불가 ex) Nullable<Nullable<int>> num

profile
게임만 하다가 개발자로

0개의 댓글