비교 연산자는 두 개의 피연산자를 가지는 이항 연산자로 크기 비교( >, <, <=, >= ), 등가 비교 ( ==,!= )가 있으면 메모리의 값을 비교합니다, 즉 왼쪽의 피연산자와 오른쪽의 피연산자를 비교하여, 어느 쪽이 더 큰지, 작은지, 또는 서로 같은지를 판단합니다. ( Stack에 있는 값 )
==
왼쪽의 피연산자와 오른쪽의 피연산자가 같으면 참을 반환
!=
왼쪽의 피연산자와 오른쪽의 피연산자가 같지 않으면 참을 반환
>
왼쪽의 피연산자가 오른쪽의 피연산자보다 크면 참을 반환
>=
왼쪽의 피연산자가 오른쪽의 피연산자보다 크거나 같으면 참을 반환
<
왼쪽의 피연산자가 오른쪽의 피연산자보다 작으면 참을 반환
<=
왼쪽의 피연산자가 오른쪽의 피연산자보다 작거나 같으면 참을 반환
1. 정수형 비교 ( 기본 자료형 )
기본 자료형을 사용하는 지역 변수는 메모리에 저장되는 장소는 Stack로 비교 연산은 메모리 Stack에 있는 실제 값을 비교하여 결과를 참/거짓으로 반환합니다.
1) 결과 : 안녕 == 안녕 : false -> str01, str02는 모두 문자열 객체로 new로 객체를 생성하여서 실제 Data는 Heap 저장되고 Stack에 있는 str01, str02의 값은 실제 Data의 주소로 100과 200가 저장됩니다. == 비교 연산자는 비교하는 변수의 메모리 값에 대한 비교로 각각 100, 200을 비교하게 됩니다. 그러므로 str01, str02의 비교는 거짓입니다.
2) 결과 : 안녕 equals 안녕 : true -> equals는 str01, str02가 참조하고 있는 주소의 실제 값을 안녕과 안녕을 비교하는 것으로 참( True )입니다.