왜 자바의 이중 인스턴스 변수에 소문자 d가 붙어 있습니까? 그들은 이것을 가질 필요가 있습니까?자바에서 이중 인스턴스 변수
예 :
d
숫자 0, 26
int
값입니다없이 등
double area = 0d;
double avgDailyTemp = 26d;
...
왜 자바의 이중 인스턴스 변수에 소문자 d가 붙어 있습니까? 그들은 이것을 가질 필요가 있습니까?자바에서 이중 인스턴스 변수
예 :
d
숫자 0, 26
int
값입니다없이 등
double area = 0d;
double avgDailyTemp = 26d;
...
기본적으로 문자 숫자는 정수입니다. Java 2 배로 100 억을 넘길 경우 정수 범위를 벗어나기 때문에 오류가 발생합니다. d
소문자를 명시 적으로 지정하면 대신 이중 리터럴로 정의됩니다.
네, 맞습니다! – MariuszS
"." 끝에 대신 d :'double area = 260000000000.; ' – OlgaMaciaszek
TIL, 감사합니다! –
.
d
을 필요로하지만 상수 값이 선언 된 변수가 아닙니다. 이것은 데이터 유형의 컴파일러에 대한 "힌트"입니다.
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
double a = 10000000000; // ERROR! Integer number too large
double b = 10000000000d; // OK!
이 답변을 참조하십시오 : http://stackoverflow.com/a/28353219/1057429이 long''에 대해 이야기하지만'에 대한 정보를 제공합니다 그것의 불분명하기 때문에뿐만 아니라 – alfasin
당신이, 당신의 질문을 바꾸어 말하다 수 double'. 이중 인스턴스 변수는 무엇입니까? double은 원시적이며 객체가 아니며 원시 타입은 Java에서 낮은 사례입니다 –
@SleimanJneidi OP는 'double'에 '26d'의 'd'부분이 필수인지 묻습니다. – Pshemo