22.03.16 조건연산자, 대입연산자

Saparian·2022년 3월 16일
0

오늘의배움

목록 보기
35/53

조건연산자 ?:

사용 예시
x>y ? x : y
x>y가 true면 x, false면 y

public static void main(String[] args) {
		int x, y, z;
		int absX, absY, absZ;
		char signX, signY, signZ;
		
		x = 10;
		y = -5;
		z = 0;
		
		absX = x >= 0 ? x : -x;	// x의 값이 음수이면, 양수로 만든다.
		absY = y >= 0 ? y : -y;
		absZ = z >= 0 ? z : -z;
		
		signX = x > 0 ? '+' : ( x==0 ? ' ' : '-');	// signX = x의 부호
		signY = y > 0 ? '+' : ( y==0 ? ' ' : '-');
		signZ = z > 0 ? '+' : ( z==0 ? ' ' : '-');
		
		System.out.printf("x=%c%d%n", signX, absX);
		System.out.printf("y=%c%d%n", signY, absY);
		System.out.printf("z=%c%d%n", signZ, absZ);
	}
  • 결과값
x=+10
y=-5
z= 0

대입연산자 =, op=

대입연산자 =

일반적으로 많이 사용되는 연산자이다.
우측 피연산자 값을 왼쪽 피연산자에 저장한다.
우선순위가 가장 낮기때문에 가장 나중에 연산된다.
왼쪽 연산자(lvalue)는 변수처럼 변경될 수 있기때문에 리터럴이나 상수가 올 수 없다.

op=

이게 무슨 연산자인가 싶었는데 Operater(연산자)의 약자였다.
다른 연산자와 같이 사용할 수 있다는 의미였다.
두 연산자는 반드시 붙여서 사용해야한다. (공백 X)

op==
i += 3;i = i + 3;
i -+ 3;i = i - 3;
i *= 3;i = i * 3;
i /= 3;i = i / 3;
i %= 3;i = i % 3;
i <<= 3;i = i << 3;
i >>= 3;i = i >> 3;
i &= 3;i = i & 3;
i ^= 3;i = i ^ 3;
i |= 3;i = i | 3;
i *= 10 + j;i = i * (10 + j);

맨 아래식을 조심하자
i = i * 10 +j; 가 아니다

연산자 진도 종료

드디어 연산자 진도가 종료됐다.
이후에는 조건문에 대한 공부를 시작해야한다.

진도 나가는 속도가 느린편이기는 하지만 꾸준히 나아가고 있다는 것은 다행이다.
그리고 책으로 진도나가는 것과 별개로 추가적인 공부를 계속 하고 있다는 것도 좋은 점인 것 같다.

최소한의 진도치 외에는 나머지 시간은 다른 공부를 진행할 수 있어서 좋은 것 같다.

0개의 댓글