1-4. C#, 연산자, NULL결합연산자, 조건연산자, 논리/비트연산자, SHIFT연산자, IS, AS
기본연산자
산술 연산자
비교연산자
l x가 int 타입인 경우 x is int를 테스트 하면 true가 된다. 기본 타입 뿐만 아니라 사용자에 의해 정의된 클래스도 테스트 된다.
기타연산자
논리연산자
l &&는 AND, ||는 OR
l ^는 XOR, !는 NOT의 의미
비트연산자
l &는 AND, |는 OR
l ^는 XOR, ~는 NOT의 의미
Shift 연산자
l 비트별 연산이 필요한 경우, 그리고 2의 n제곱배 곱셈이 필요한 경우 사용되는 연산자이다.
l 예) x MB를 bit로 나타내고자 할 때, x*1024*1024*8 을 구하는 것은 복잡하다. 그리고 가독성도 떨어진다. 이럴 때 x<<23 또는 x<<20<<3 으로 표현한다.
논리연산자와 비트연산자
l C#에서는 bool 타입만이 논리연산자를 사용할 수가 있다. C에서는 0이나 -1을 false라고 묵시적으로 생각하였으나, C#에서는 반드시 true, false로 명시하고 있다.
l int형은 bit 연산자만을 사용할 수 있는데 bit연산이란 정수를 2진수로 나타낸 후 각 자리의 bit들을 각각 연산하는 것이다.
l bool 타입은 논리 연산(&&, II) 대신 &, | 등을 사용할 수도 있다.
l A&&B의 경우, 만약 A가 false이면 더 이상 B를 계산하지 않고 계산 결과값이 false로 결정된다. A가 true일때만 B를 계산한다.
l A||B의 경우, 만약 A가 true이면 더 이상 B를 계산하지 않고 계산 결과값을 true로 결정한다. A가 false인 경우에만 B를 계산한다.
l A|B나 A&B의 경우, A가 값에 관계없이 계속해서 B를 계산해서 A와 B로 연산을 수행한 후에 계산 결과값 true를 결정한다.
조건 연산자
l 간단한 if-then-else의 경우에 조건 연산자를 사용한다.
l 조건의 참, 거짓에 따라 다른 값을 가진다.
NULL 결합연산자
아래 ??(Null-Coalesce Operator) 연산자는 널을 체크하여 널이 아닌 것을 돌려주는데,
예제로 확인하자.
댓글 없음:
댓글 쓰기