본문 바로가기

java/연산자(Operator)

비교 연산자

 

비교 연산자는 boolean 타입으로 평가될 수 있는 조건식( 참인지 거짓인지 반환)에 사용되며,

크게 대소 비교(>, <, <=, >=) 연산자와 등가 비교(==, !=) 연산자로 분류된다. 

비교연산자에서 <=, >= 에서 = 는 뒤에 와야한다.

 

 

대소 비교 연산자

대소 비교 연산자는 boolean을 제외한 나머지 기본 타입에 모두 사용할 수 있다.

(그러니까 크기를 비교하는-적용하는- 값에는 boolean 을 사용하지 못하나  결과는 boolean형으로 평가할 수 있다. )

대소 비교 연산자 결과
5 > 3 true
5 <= 5 true
3 > 2 true
2 >= 3 false

 

비교 연산자를 사용할 때 주의할 점은, 이항 비교만 가능하다는 것이다. 

int x = 3 ;
System.out.println(1 < x< 5);

 

그러니까 위는 성립하지 않는다.  비교연산자에는  두 항이 올 수 없다.

성립하려면 &&필요하다.

즉 “x가 1보다 크고 5보다 작다”를 표현할 때, 1 < x < 5가 아니라,

1 < x && x < 5와 같이 논리 연산자를 사용해 작성해주어야 한다.

논리 연산자는 다음 글에 나온다.

 

 

 

등가 비교 연산자

등가 비교 연산자는 모든 타입에 사용할 수 있는 연산자 로, 두 항의 값이 동등한 지의 여부를 판단할 때 사용한다.

다만, 기본 타입과 참조 타입 간에는 등가 비교 연산자를 사용할 수 없다. 

즉, 기본 타입의 값끼리, 혹은 참조 타입의 값끼리만 등가 비교 연산자를 사용할 수 있다.

등가 비교 연산자는 값이 동등하면 true를, 그렇지 않으면 false를 반환한다.

등가 비교 연산자 결과
5 == 3 false
5 == 5 true
3 != 2 true
3 != 3 false

정리하자면, = 하나만 쓸때는 할당할때 쓰이고, ==일때는 비교할때 쓰인다. ( 둘은 완전 다른 의미다.)

!=는  같지 않은지에 대한 비교 연산자이다. (두 항이 같으면  false 그렇지 않으면 true )

문자열은 등가비교 == 사용하면 안된다.  대신 equals()로 해야한다. (등가비교를 한다고 오류는 나지 않는다.)

 

 

 

 

 

 

 

 

'java > 연산자(Operator)' 카테고리의 다른 글

연산자 우선순위  (0) 2024.04.04
논리연산자  (0) 2024.04.04
산술 연산자  (0) 2024.04.04