Java에서 Long에서 Double로 변환
Long
데이터 유형을 Double
또는 로 변환하는 방법이 double
있습니까?
예를 들어, 나는 변환 할 필요가 15552451L
A를 double
데이터 유형입니다.
간단히 할 수 있습니다.
double d = (double)15552451L;
또는 Long 객체에서 다음과 같이 두 배를 얻을 수 있습니다.
Long l = new Long(15552451L);
double d = l.doubleValue();
간단한 캐스팅?
double d = (double)15552451L;
바이너리 변환을 찾고 있습니까?
double result = Double.longBitsToDouble(15552451L);
이것은 리터럴 double
과 동일한 비트 패턴을 제공합니다 long
.
바이너리 또는 16 진수 리터럴이 여기에서 유용합니다. 여기 몇 가지 예가 있어요.
double nan = Double.longBitsToDouble(0xfff0000000000001L);
double positiveInfinity = Double.longBitsToDouble(0x7ff0000000000000L);
double positiveInfinity = Double.longBitsToDouble(0xfff0000000000000L);
( Double.longBitsToDouble (long) 참조 )
당신은 또한 long
다시 얻을 수 있습니다
long bits = Double.doubleToRawLongBits(Double.NaN);
( Double.doubleToRawLongBits (double) 참조 )
이미 언급했듯이 단순히 long에서 double로 캐스팅 할 수 있습니다. 그러나 long에서 double 로의 변환 은 Java에서 축소 변환 이므로 주의하십시오 .
예를 들어 다음 프로그램은 0이 아닌 1을 인쇄합니다.
long number = 499999999000000001L;
double converted = (double) number;
System.out.println( number - (long) converted);
Long i = 1000000;
String s = i + "";
Double d = Double.parseDouble(s);
Float f = Float.parseFloat(s);
이렇게하면 문자열 값을 Double 또는 Float 또는 Int로 쉽게 변환 할 수 있으므로 Long 유형을 Double 또는 Float 또는 Int로 문제없이 변환 할 수 있습니다.
긴 날짜 유형 이란 무엇을 의미 합니까?
long을 double로 캐스팅 할 수 있습니다.
double d = (double) 15552451L;
다음과 같이 시도 할 수 있습니다.
long x = somevalue;
double y = Double.longBitsToDouble(x);
당신에게 좋은 것 같아요.
BigDecimal.valueOf([LONG_VALUE]).doubleValue()
이 코드는 어떻습니까? :디
참고 URL : https://stackoverflow.com/questions/3724830/conversion-from-long-to-double-in-java
'programing' 카테고리의 다른 글
Android 프로젝트에서 대상 빌드를 변경하는 방법은 무엇입니까? (0) | 2020.10.05 |
---|---|
항목을 확인한 후 어떤 CheckedListBox 이벤트가 트리거됩니까? (0) | 2020.10.05 |
PHP 파일에서 반환 배열을로드하는 방법은 무엇입니까? (0) | 2020.10.05 |
Python에서 문자열이 대문자, 소문자 또는 대소 문자 혼합인지 확인 (0) | 2020.10.05 |
Asp.net Identity MVC 5에서 역할 만들기 (0) | 2020.10.05 |