Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ruby2d
- C
- react
- JS
- jetbrains
- error
- gnuplot
- RaspberryPi
- Android
- Java
- Vane
- IntelliJ
- rubymine
- 루비
- Godot
- gradle
- Spring
- kotlin
- Shell
- maven
- Baekjoon
- GitHub
- OTLanguage
- OAuth
- Python
- CPP
- 개발노트
- plugin
- ruby
- boj
Archives
- Today
- Total
PersesTitan(페르) 기술블로그
[Java] Double값이 정수인지 확인하기 본문
나머지 이용
1로 나누고 나머지가 존재한다면 소수점값이 있다는 의미이므로 해당 원리를 이용하여 값이 정수값인지 확인할 수 있습니다.
코드
public boolean isInteger(double num) {
return num % 1 == 0.0;
}
정수 변환
값이 정수라면 정수형으로 변환하더라도 값이 같다는 원리를 이용한 방법입니다.
코드
public boolean isInteger(double num) {
return num == (int) num;
}
소수점 버림 이용
소수점 버림, 올림, 반올림 무엇을 사용해도 상관 없습니다.
해당 동작후 원래 값과 일치하는 여부로 해당 값이 정수인지 확인합니다.
코드
public boolean isInteger(double num) {
return Math.floor(num) == num;
}
DoubleMath
해당 클래스는 의존성을 추가해주어야합니다.
의존성을 추가해주면 DoubleMath
이라는 클래스를 사용할 수 있게 됩니다.
해당 클래스의 isMathematicalInteger
메소드를 사용하면 정수인지 확인할 수 있습니다.
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava-parent</artifactId>
<version>31.1-jre</version>
<type>pom</type>
</dependency>
Gradle
implementation 'com.google.guava:guava:31.1-jre'
코드
public boolean isInteger(double num) {
return DoubleMath.isMathematicalInteger(num);
}
예제
코드
System.out.println(isInteger(1.0));
System.out.println(isInteger(83.0));
System.out.println(isInteger(0.0));
System.out.println(isInteger(1.24));
System.out.println(isInteger(0.345));
출력
true
true
true
false
false
'Language > Java' 카테고리의 다른 글
[Java] IllegalAccessException (0) | 2023.03.12 |
---|---|
[Java] InstantiationException (0) | 2023.03.12 |
[Java][BigDecimal] RoundingMode 올림, 반올림, 내림 구현하기 (0) | 2023.01.21 |
[Java] 한글 에디터 개발 (뷁어, 모음자음 분리, 영어 발음 한글로 변경 등) (0) | 2022.11.27 |
[GuguClass]구구클래스 한줄로 구현해보기 (0) | 2022.11.24 |