C#

2024.03.12 - Nullable Type(?), 조건 연산자(?:), null 조건부 연산자(?.)

강병곤 2024. 3. 12. 09:21
  • Nullable Type

Nullable Type이란 Null을 값으로 가질 수 없는 형식을 Null을 가질 수 있게 만드는 것을 말한다.

값 형식 데이터(int, double, 구조체 등등..)들이 Null을 가질 수 없다.

 

- Nullable Type 선언 방법

데이터_타입? 이름 

 

- 사용 예시

평범함 int형 데이터는 null을 값으로 가질 수 없다

 

null을 가진다

 

 

 

  • 조건 연산자(삼항 연산자)(?:)

조건 연산자는 피연산자를 3개 가지는 특별한 연산자이다. 

 

- 조건 연산자 사용 방법

조건식 ? 참일_때의_반환_값 : 거짓일_때의_반환_값

 

- 사용 예시

 

 

  • null 조건부 연산자(?.)

?. 연산자는 객체 뒤에 붙어서 객체가 null이 아니면 객체의 멤버에 접근하게 해준다.

?. 앞의 객체가 null이라면, 결과로 null을 반환한다.

 

- 조건부 연산자 사용방법

객체?.접근할_객체의_멤버

 

- 예시 코드

 

num은 myClass, myClass2가 null인 경우 null값이 할당될 수 있기 때문에 nullable Type으로 선언해야한다.(int? num)

객체 myClass는 null이므로 member에 접근하지 못하고 null을 반환했다.

객체 myClass2는 null이 아니므로 member의 값 10을 반환했다.