java 类型是直接使用基本类型还是就干脆直接用java.lang的类型
黄舟
黄舟 2017-04-17 13:06:18
0
14
1146

比如:

Integer => int
Boolean => boolean
...

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回覆(14)
PHPzhong

int是基本型,Integer是對象,這是二者本質區別,具體使用見下圖。

Ty80

具體場合具體用。

一般bean裡面基本型即可。

如果欄位涉及物件。那就用包裝類型。

Ty80

兩個原則:

  1. 在需要使用物件的時候用 boxed 類型,在不需要物件的地方盡量使用 unboxed 類型

  2. 在整個程式中,盡可能少的進行 boxed unboxed 轉換,換句話說,就是在必須轉換的時候才轉換

左手右手慢动作

能用基本盡量用基本型,如果需要用到包裝類別的時候再去轉換吧

大家讲道理

上面都說了許多,我說一個比較重要的一點,

Long i,long i 分別遞加 ,分別運行一百萬次,就會發現所需的時間相差非常非常大!
這是由於 Long物件運算時每次建構一個新的Long物件裝long實例

洪涛

看你需要使用null不,需要就用包裝類型吧

迷茫

盡量使用原生型別。需要傳引用或放進容器中就用包裝器。

阿神

在32位元系統中 儲存一個Integer類型的開銷:
32位元儲存物件引用
32位元儲存物件標記資訊:物件狀態等
32位元儲存物件的鎖定資訊
32位元儲存int值資訊
也就是說,初始化一個Integer物件需要開銷128位元記憶體空間

而一個普通int型別數據,只需要32位元的資訊。

在這樣的情況下,你覺得優先考慮用什麼?

阿神

除非必要,不然一律使用基本型別。

  1. 避免型別轉換帶來的問題(特別是有些隱式轉換增加了排除問題的難度)。例如轉換後精讀缺少,空指針等問題。
  2. 基本型別的存放在堆疊中,讀寫速度快。雖然這點速度很不明顯.
  3. 基本型別是透過值傳遞。好處是透過參數傳遞的時候,在方法內部改寫了參數的狀態值,不會影響到外部的參數。而且在並發中也比較好控制。
Peter_Zhu

一般都是直接使用基本類型的,很少用封裝的,除非有需要

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板