논리 연산자 ( && || )
논리 연산자의 예시
① x는 10보다 크고, 20보다 작다.
10 < x && x < 20
논리연산자를 생략하고 10 < x < 20 으로 표현하는 것은 불가.
② i는 2의 배수 또는 3의 배수이다.
i%2 = 0 || i%3 = 0
어떤 수가 2의 배수라는 의미는 2로 나눴을 때 나머지가 0이라는 것.
i의 값이 9일때, i는 2의 배수는 아니지만, 3의 배수이므로 true.
③ i는 2의 배수 또는 3의 배수지만 7의 배수는 아니다.
(i%2 = 0 || i%3 = 0) && i%6! = 0
&&가 ||보다 우선순위가 높으므로 괄호()를 사용해서 우선순위를 명확하게 해야함.
④ 문자 ch는 숫자('0'~'9')이다.
'0' <= ch && ch <= '9'
아스키표에서 문자 '0'부터 '9'까지 연속적으로 배치 되어 있기 때문에 가능한 식.
ch값이 3인 경우, 둘 다 true라 결과가 true.
자바에서 문자는 내부적으로 유니코드(Unicode) 값으로 표현되며, 이는 ASCII 값과 호환된다.
char 타입은 16비트 부호 없는 정수로, 문자의 유니코드 값을 나타낸다.
따라서 문자를 숫자와 더하거나, 문자를 문자와 더하면, 실제로는 정수 덧셈이 이루어진다.
⑤ 문자 ch는 대문자 또는 소문자이다.
('a' <= ch && ch <= 'z') || ('A' <= ch && ch <= 'Z')
문자 'a'부터 'z'까지, 'A'부터 'Z'까지 연속적으로 배치 되어 있으므로 가능한 식.
※ 참고
논리 부정 연산자 (!)
피연산자 앞에 !를 붙이면 true와 false를 반대로 바꿔줌.
단항연산자이므로 연산방향이 오른쪽에서 왼쪽.
!true → false
!false → true
조건 연산자 ( ? : )
세 개의 피연산자인 조건식, 식1, 식2를 필요로 하는 유일한 삼항 연산자.
식1과 식2의 타입이 다른 경우, 자동 형변환이 발생.
대입 연산자 ( = )
오른쪽 피연산자의 값을 왼쪽 피연산자에 저장하고 저장된 값을 연산 결과로 반환.
가장 낮은 우선순위를 가지고 있으므로 식에서 제일 나중에 수행됨.
※ 참고
복합 대입 연산자
대입연산자는 다른 연산자(op)와 결합하여 'op='와 같은 방식으로 사용가능.
'Backend > Java' 카테고리의 다른 글
Java 13. 반복문 while, for (0) | 2024.05.08 |
---|---|
Java 12. 조건문 (0) | 2024.05.08 |
Java 10. 증감연산자, 형변환, 산술변환, 나머지연산자, 비교연산자 (0) | 2024.05.08 |
Java 9. 연산자 피연산자, 연산자의 종류와 우선순위 (0) | 2024.05.07 |
Java 8. 화면 출력 system.out.print(), println(), printf() (0) | 2024.05.07 |