關於java使用double仍是float

眼睛一亮在論壇上發現一枚頗有價值的評論趕忙抄下來...java

記住java必定要用double,更鼓不變,就算數值不大也要用double。
瞭解java虛擬機的底層會知道,float放在內存中實際上是看成double來處理的,它不會比double更節約內存資源,對應的double虛擬機會直接以double形式來進行處理,快速並且精度高,可是若是用float,不但不會節約內存資源,虛擬機爲了校驗float的精度,會花費更多的系統資源,例如cpu時鐘,程序執行步驟等等。
相對於這點,整數類型,能用int就用int,不要用什麼short類型,道理是同樣,其實虛擬機中short,char,boolean,byte在內存中都是以int形式來處理的,爲了校驗精度,虛擬機還會付出格外的開銷,這樣其實得不償失,不要自做聰明覺得節約了內存,其實錯了。固然long類型例外,雖然long類型也會增長資源的開銷,可是畢竟能完成int完成不了的功能。
還有,其實這些資源的開銷對於整個應用程序和現有硬件資源而言就是九牛一毛,微乎其微,沒有必要過於在乎。就用習慣的形式便可。不要自做聰明的用特別的數據類型,浮點就double,整形就int,長整型就long,其它的必要性都不大(byte的話,用來作數組仍是很方便的,除此不推薦使用)數組

暑假準備看完JVM,別人的講解總歸要本身來印證,不能由於有道理就信了,噶內存

相關文章
相關標籤/搜索