Java에서 Long에서 Double로 변환
변환하는 방법이 있습니까?Long
데이터 유형 대상Double
또는double
?
예를 들어, 변환이 필요합니다.15552451L
에 대해서double
data type 입니다.
간단하게 할 수 있는 것은, 다음과 같습니다.
double d = (double)15552451L;
또는 Long 객체에서 다음과 같이 두 배로 얻을 수 있습니다.
Long l = new Long(15552451L);
double d = l.doubleValue();
간단한 캐스팅?
double d = (double)15552451L;
이미 언급했듯이, 여러분은 단순히 길게 두 배로 캐스팅할 수 있습니다.그러나 Java에서는 긴 변환에서 두 배 변환으로 좁혀지기 때문에 긴 변환에서 두 배 변환에 주의하십시오.
예: 다음 프로그램은 0이 아닌 1을 인쇄합니다.
long number = 499999999000000001L;
double converted = (double) number;
System.out.println( number - (long) converted);
바이너리 변환을 찾고 계십니까?
double result = Double.longBitsToDouble(15552451L);
이렇게 하면double
제공된 것과 동일한 비트 패턴을 사용하여long
.
2진수나 16진수 리터럴이 도움이 될 거야여기 몇 가지 예가 있어요.
double nan = Double.longBitsToDouble(0xfff0000000000001L);
double positiveInfinity = Double.longBitsToDouble(0x7ff0000000000000L);
double negativeInfinity = Double.longBitsToDouble(0xfff0000000000000L);
(Double.longBitsToDouble(long) 참조)
또, 그 유저희망하고 있는long
로 되돌아가다.
long bits = Double.doubleToRawLongBits(Double.NaN);
(Double.doubleToRawLongBits(더블) 참조)
Long i = 1000000;
String s = i + "";
Double d = Double.parseDouble(s);
Float f = Float.parseFloat(s);
이렇게 하면 문자열 값을 Double, Float 또는 Int로 쉽게 변환할 수 있으므로 문제없이 Long type을 Double, Float 또는 Int로 변환할 수 있습니다.
긴 데이트 타입이 무슨 뜻이죠?
롱에서 더블로 캐스팅할 수 있습니다.
double d = (double) 15552451L;
다음과 같은 작업을 수행할 수 있습니다.
long x = somevalue;
double y = Double.longBitsToDouble(x);
당신에게 좋은 것 같아요.
BigDecimal.valueOf([LONG_VALUE]).doubleValue()
이 코드는 어떻습니까?:D
언급URL : https://stackoverflow.com/questions/3724830/conversion-from-long-to-double-in-java
'source' 카테고리의 다른 글
{} 또는 새 Object()를 사용하여 JavaScript에서 빈 개체를 생성하시겠습니까? (0) | 2022.09.18 |
---|---|
Python에서 쉼표로 분할하고 공백을 제거합니다. (0) | 2022.09.18 |
MySQL skip-name-resolve (0) | 2022.09.18 |
Elastix 4 및 MariaDB 5.5.50: 외부 키 제약 조건을 복제할 수 없습니다. (0) | 2022.09.18 |
사전에 특정 키가 포함되어 있는지 테스트하는 방법 (0) | 2022.09.18 |