728x90
JAVA (증감연산자,쉬프트,비트연산자)
(코드는 나눠서 썼지만 연결된 하나의 코드이다 .)
* 증감연산자
* ++ : 1 증가 시킨다.
* -- : 1 감소 시킨다.
// 긁지않은 개발자
public class HEx01 {
public static void main(String[] args) {
int i=10, j=10;
int k = i + j;
// %가 3개면 출력할 값도 3개써야 한다.
// printf("찍을 모양", 찍을값)
System.out.printf("%d + %d = %d\n", i, j, k); // 10 + 10 = 20
실행 결과
10 + 10 = 20
// %가 3개면 출력할 값도 3개써야 한다.
// printf("찍을 모양", 찍을 값..)
System.out.printf("%d + %d = %d\n", i, j, k);
++i; // 전위 증감 연산
// 긁지않은 개발자
++j;
k = i + j;
System.out.printf("%d + %d = %d\n", i, j, k); // 11 + 11 = 22;
실행 결과
11 + 11 = 22
i++; // 후위 증감 연산
// 긁지않은 개발자
j++;
k = i + j;
System.out.printf("%d + %d = %d\n", i, j, k); // 12 + 12 = 24;
실행 결과
12 + 12 = 24;
- 단독으로 사용시 전위/후위 상관없이 1증가이지만
다른 연산자와 같이 사용하면 연산 순서가 변경된다.
// 긁지않은 개발자
k = i++ + ++j;
System.out.printf("%d + %d = %d\n", i, j, k); // 13 + 13 = 25;
k = ++i + j++;
System.out.printf("%d + %d = %d\n", i, j, k); // 14 + 14 = 27;
k = ++i == ++i ? i++ : ++j;
System.out.printf("%d, %d, %d\n", i, j, k); // 16, 15, 15
실행 결과
13 + 13 = 25
14 + 14 = 27
16, 15, 15
||(OR) : 둘중에 1개라도 참이면 참
OR 연산의 경우 앞의 식이 참이면 뒤의 식은 계산하지 않습니다.
// 긁지않은 개발자
i = j = 10;
k = ++i == ++j || ++i == ++j ? ++i : ++j;
System.out.printf("%d, %d, %d\n", i, j, k); // 12, 11, 12
실행 결과
12, 11, 12
// &&(AND) : 둘다 참인 경우만 참
// AND 연산의 경우 앞의 식이 거짓이면 뒤의 식은 계산하지 않습니다.
// 긁지않은 개발자
i = j = 10;
k = ++i == j++ && ++i == ++j ? ++i : ++j;
System.out.printf("%d, %d, %d\n", i, j, k); // 11, 12, 12
}
}
실행 결과
11, 12, 12

728x90
'JAVA > JAVA 이용하기' 카테고리의 다른 글
[JAVA] JAVA 현재 날짜 출력하기 (0) | 2023.06.09 |
---|---|
[JAVA] JAVA print, println, printf 사용법과 실행 결과 (0) | 2023.06.09 |
[JAVA] Java Byte Overflow(오버플로우), char, 알파벳출력하기 (0) | 2023.06.09 |
[JAVA] JAVA 반올림, bitwise연산자, 변수교환방법 (0) | 2023.06.09 |
[JAVA] JAVA Shift 쉬프트 연산자란? Shift연산자 사용방법 (0) | 2023.06.09 |