[C#공부] as와 is 연산자
2018. 1. 6. 16:14
# as연산자
객체를 캐스팅 할 때 사용되는 연산자이다. as연산자는 캐스팅에 성공하면 캐스트 결과를 리턴하고 캐스팅에 실패하면 null값을 리턴한다. 클래스간 타입변환을 명시적으로 할 때, 컴파일에서 에러가 발생하지 않지만 프로그램을 실행하면 'InvalidCastException'이 발생하는 경우가 있다. [C#문법] 캐스팅 및 타입 변환 에서 2-2) 클래스 타입간의 변환 참고.
이러한 경우 as연산자를 사용하여 캐스팅한다면 프로그램 실행을 거치지 않고도 캐스팅이 성공유무를 확인할 수 있다.
단, as연산자는 reference type간의 캐스팅에만 가능하다. (value type은 불가)
# is연산자
is연산자 역시 as연산자처럼 캐스팅 성공유무를 확인할 수 있는 연산자이다. 하지만 그 역할은 다르다. as연산자는 캐스팅 결과를 리턴하지만 is연산자는 캐스팅이 가능하면 true, 캐스팅이 불가능하면 false를 리턴한다. 따라서 단지 캐스팅 성공유무만 판단할 수 있다.
'Programming > C#' 카테고리의 다른 글
[C#공부] var 키워드 (0) | 2018.01.06 |
---|---|
[C#공부] 배열/Collection을 이용한 foreach문 사용 (0) | 2018.01.06 |
[C#공부] Boxing & Unboxing (0) | 2018.01.06 |
[C#공부] 캐스팅 및 타입 변환 (0) | 2018.01.06 |
[C#공부] C#과 닷넷 프레임워크의 개념 (0) | 2018.01.06 |