Hyebin‘s blog
Published 2023. 1. 5. 23:54
비교 연산자 JAVA

비교 연산자

피연산자의 타입이 다를 경우에는 비교 연산을 수행하기 전에 타입을 일치시킨다. 

'A' == 65; // true ,1번
3 == 3.0; // true, 2번
0.1f == 0.1; // false, 3번
0.1f == (float)0.1; // true, 4번

1. 'A' (하나의 문자는 정수타입) 는 int 타입으로 변환되면서 65가 된 다음 65==65 이므로 true가 된다.

2. 3은 dobule 타입인 3.0으로 변환하여 3.0==3.0 이므로 true가 된다.

3. 0.1f, 부동소수점 방식을 사용하는 실수타입은 0.1을 정확하게 표현할 수 없을 뿐 아니라 float 타입과 double 타입의 정밀도 차이로 false가 나온다. 따라서 이를 해결하기 위해 4번과 같은 방법으로 강제 타입 변환 후 비교해야한다. 

 

⭐️ equals()

문자열을 비교할 때는 동등 연산자 대신 equals()을 사용한다.

boolean result = str1.equals(str2); //문자열이 같은지 검사
boolean result = ! str.equals(str2); //문자열이 다른지 검사

 

 

'JAVA' 카테고리의 다른 글

참조 타입, 문자열  (0) 2023.01.15
switch문  (0) 2023.01.07
증감연산자, 오버플로우와 언더플로우  (0) 2022.12.18
패키지, 클래스 ,메소드 선언 & 변수와 연산  (0) 2022.12.18
프로그래밍 언어와 자바  (0) 2022.12.12
profile

Hyebin‘s blog

@hyebin Lee

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그