반응형
출처
https://stackoverflow.com/questions/13297207/is-it-valid-to-compare-a-double-with-an-int-in-java
Java에서 double과 int를 비교하는 것이 유효합니까?
Utilities.getDistance(uni, enemyuni) <= uni.getAttackRange()
Utilities.getDistance는 double을 리턴하고 getAttackRange는 int를 리턴합니다. 위의 코드는 if 구문의 한 부분이고 이는 true가 되어야 합니다. 이 비교가 유효합니까?
감사합니다.
--
5개 답변중 1개의 답변만 추려냄.
예 유효합니다. 비교하기 전에 int를 double로 변환(promote)합니다.
JLS 섹션 5.6.2 (이진 숫자 변환) 의 링크에 있는 JLS 섹션 15.20.1 (숫자 비교 연산) 를 확인해 보세요.
뒷부분을 발췌하면
primitive의 넓은 타입의 변환은 다음 규칙에 의해 정의된 대로 두 피연산자에 변환이 적용됩니다.
* 만약 한 피연산자 type이 double이면 다른 하나는 double로 변환됩니다.
* ...
--
원본
https://github.com/SDRLurker/TIL/blob/master/scala/01/compare.md
반응형
'Java' 카테고리의 다른 글
파이프 글자로 문자열 분리하기("|") (0) | 2020.03.03 |
---|---|
CentOS6 gradle 3.4.1 설치 스크립트 (0) | 2019.06.20 |
Hive에서 레코드를 지우거나(delete) 갱신하는(update) 방법 (0) | 2018.03.31 |
uber jar는 무엇입니까? (0) | 2017.09.05 |
자바에서 표준 입력을 non-blocking으로 읽는 방법? (2) | 2016.03.07 |