2
A
回答
0
默認浮點文字是在java中double
,如果你想要的值浮動,你可以在默認情況下對待任何小數點值作爲雙爲此
float f = 333.5f
1
333.50
是文字double
類型。這只是一個規則 - 它來自1970年代的C語言。這就像0
是int
類型的文字。
等價的float
文字是333.5f
,或者您可以使用編譯時可評估的常量表達式,如(float)333.50
。
事實上333.5
可以表示準確作爲float
因爲它是一個二進有理數。
0
這是你如何在Java(JLS)
int a = 12;
long b = 12L;
float c = 12.0f;
double d = 12.0d;
定義文本所以你可以寫那些等;
i = 1222;
是文字整數
,並以同樣的方式
j = 3.1415;
是雙字面
當然可以顯式定義類型:
i = 1222L; //for long values
j = 3.1415f; //for float values
2
因爲... e Java規範說,默認情況下,浮點文字是一個double
值。
浮點文本
浮點字面是
float
類型的,如果它與字母F
或f
結束;否則其類型是double
並且它可以與 字母D
或d
任選結束。
而不是使用一個收縮轉換(double
到float
),只需使用F
前綴在字面的聲明:
float f = 333.50F;
3
333.50
可以在float
類型來表示的值,但是一個雙字面值。使用333.50F
有一個浮點數字。
該規範,參見Oracle Java documentation about Primitive Data Types,明確不同的文字:
浮點文本
浮點字面是
float
類型的,如果它與字母F
或f
結束;否則其類型爲double
,並且可以選擇以字母D
或d
結尾。
沒有爲整數文字但這裏較小的類型(int
)一個類似的情況下是默認的:
整數常量
文字的整數類型
long
如果它以字母L
或l
結尾;否則它是int類型的。建議您使用大寫字母L
,因爲小寫字母l
很難與數字1
區分。
0
的Java。所以您需要特別定義您正在使用哪種類型的原始數據類型。 例如:
`int i=10; // default
long l=123456L;
float f=123.12F;
double d=123.12345; // default
` 所以你必須明確地定義什麼類型的數據類型不使用默認的類型
相關問題
- 1. 爲什麼Swift的默認值是雙浮點數?
- 2. 添加浮點數,這是爲什麼?
- 3. 在php中爲什麼是浮點數>字符串或浮點數> int
- 4. 什麼是浮點紋理?
- 5. 爲什麼浮點異常?
- 6. 什麼是浮點數的「偏差值」?
- 7. 爲什麼NumPy浮點數不給ZeroDivisionError?
- 8. 爲什麼「overflow:hidden」會清除浮點數?
- 9. 其中是在op_addition [整數,浮點,雙]
- 10. 爲什麼x和y總是與一個浮點數爲0?
- 11. 將雙精度轉換爲浮點數
- 12. 爲什麼我應該使用整數而不是浮點數?
- 13. 將雙精度(或浮點數)轉換爲整數會發生什麼?
- 14. 作爲兩個雙打總和的雙雙精度浮點數
- 15. 浮點異常C爲什麼,它是什麼?
- 16. 浮點異常C++爲什麼和它是什麼?
- 17. 浮動,雙打和半浮點數
- 18. 什麼是單點,雙點在
- 19. 爲什麼Processing使用浮動而不是雙打?
- 20. 爲什麼inline-block「steal」4px浮點數不是的時候
- 21. 爲什麼這個tf.placeholder是一個浮點數?
- 22. C#中浮點和雙精度數據類型的實際範圍是什麼?
- 23. 爲什麼在C和C++中沒有浮點/雙精度的餘數運算?
- 24. 爲什麼我們不能用「==」來比較兩個浮點數或雙號
- 25. 硬浮點數和軟浮點數之間有什麼區別?
- 26. 雙精度浮點數和其他浮點數精度
- 27. 爲什麼只顯示6點之後的點數雖然是雙點?
- 28. 爲什麼LabView將小數轉換爲小浮點數?
- 29. 爲什麼屬性類型從浮點數變爲數字?
- 30. 爲什麼可以將此浮點文本值解析爲雙精度值?
'333.50'是雙文字時使用。一個浮點文字將是'333.50f'。基本上,double是默認值。 – khelwood
在C和C++中,*類型*取決於文字的大小,儘管是整數類型。這是一個公平的問題。 – Bathsheba