비교 연산자

이승민·2022년 11월 29일
0

Java의 정석

목록 보기
13/17

비교 연산자는 두 피연산자를 비교하는 데 사용되는 연산자다. 주로 조건문과 반복문의 조건식에 사용되며,
연산 결과는 오직 true와 false 둘 중의 하나이다. 비교 연산자 역시 이항 연산자이므로 비교하는 피연산자의
타입이 서로 다를 경우에는 자료형의 범위가 큰 쪽으로 자동 형변환하여 피연산자의 타입을 일치시킨 후에 비교한다는 점을 주의해야한다.

대소비교 연산자 < > <= >=

두 피연산자의 값의 크기를 비교하는 연산자이다. 참이면 true를, 거짓이면 false를 결과로 반환한다.
기본형 중에서는 boolean형을 제외한 나머지 자료형에 다 사용할 수 있지만 참조형에는 사용할 수 없다.

등가비교 연산자 == !=

두 피연산자의 값이 같은지 또는 다른지를 비교하는 연산자이다. 기본형은 물론 참조형, 즉 모든 자료형에 사용할 수 있다.
기본형의 경우 변수에 저장되어 잇는 값이 같은지를 앐구 있고, 참조형의 경우 객체의 주소값을 저장하기때문에
두개의 피연산자(참조변수)가 같은 객체를 가리키고 있는지를 알 수 있다. 기본형과 참조형은 서로 형변환이 가능하지 않기
때문에 등가비교 연산자로 기본형과 참조형을 비교할 수 없다.

비교 연산자도 이항 연산자이므로 연산을 수행하기 전에 형변환을 통해 두 피연사자의 타입을 같게 맞춘 다음 피연산자를 비교한다.
10 == 10.0f -> true
'0' == 0 -> false ( 48 == 0 )
'A' == 65 -> true ( 65 == 65 )

0.1 == 0.1f -> false
정수형과 달리 실수형은 근사값으로 저장되므로 오차가 발생할 수 있다.

문자열 비교

두 문자열을 비교할 때는, 비교 연산자 대신 equals()라는 메서드를 사용해야한다.
비교 연산자로 비교할 시 내용은 같지만 서로 다른 객체일 경우 false를 반환한다.
equals()는 객체는 달라도 내용이 같으면 true를 반환한다.

profile
💻 끊임없이 성장하는 백엔드 개발자 💻

0개의 댓글