2015-02-07 3 views
1

왜 자바의 이중 인스턴스 변수에 소문자 d가 붙어 있습니까? 그들은 이것을 가질 필요가 있습니까?자바에서 이중 인스턴스 변수

예 :

d 숫자 0, 26 int 값입니다없이 등
double area = 0d; 
double avgDailyTemp = 26d; 

...

+0

이 답변을 참조하십시오 : http://stackoverflow.com/a/28353219/1057429이 long''에 대해 이야기하지만'에 대한 정보를 제공합니다 그것의 불분명하기 때문에뿐만 아니라 – alfasin

+0

당신이, 당신의 질문을 바꾸어 말하다 수 double'. 이중 인스턴스 변수는 무엇입니까? double은 원시적이며 객체가 아니며 원시 타입은 Java에서 낮은 사례입니다 –

+0

@SleimanJneidi OP는 'double'에 '26d'의 'd'부분이 필수인지 묻습니다. – Pshemo

답변

4

기본적으로 문자 숫자는 정수입니다. Java 2 배로 100 억을 넘길 경우 정수 범위를 벗어나기 때문에 오류가 발생합니다. d 소문자를 명시 적으로 지정하면 대신 이중 리터럴로 정의됩니다.

+0

네, 맞습니다! – MariuszS

+1

"." 끝에 대신 d :'double area = 260000000000.; ' – OlgaMaciaszek

+0

TIL, 감사합니다! –

0

.

1
double a = 10000000000; // ERROR! Integer number too large 
double b = 10000000000d; // OK!