1樓:CookerJp
Integer不會有預設值,因為包裝型別是類,類是分配位址空間的,你指定Integer為null,說明jvm只會定義乙個類物件,但是不會給這個類物件newInstance,int型別不能直接定義為null,就是為了給預設值
2樓:最靈活的胖子
這個要看你怎麼使用了,具體來說有兩種情況,
1,把它賦值給乙個primitive的int變數,那麼會得拋乙個空指標異常,原因是虛擬機會自動執行拆包操作,拆包的前提是物件不能為空
2,把它再賦給另外乙個包裝型別Integer物件,那麼他賦值前是什麼,賦值後也是什麼,複製前是null,那麼賦值後也是null
package
com.carlwang
;import
org.junit.jupiter.api.Assertions
;import
org.junit.jupiter.api.Test
;/**
* Created by Carl Wang on 2021/2/8 9:51 上午
*/class
PrimitiveTest);}
@Test
void
test_package_object_to_package_object()}
Java中對引用型別的賦值和返回是原子操作嗎?
楊陽洋DMC JMM記憶體模型,有八種操作,lock,unlock,read,load,use,assign,store,write這八個操作是原子操作。另外就是 synchronized,和 volatile相關原子操作。你這new的物件,編譯成位元組碼看一下,應該有load use等指令,所以不...
Java中List String a new List 10 這種寫法的元素型別是List嗎?
代林 首先,Number b new Integer 10 並不是建立了乙個value 10的Integer,而是建立了乙個陣列,這個陣列的長度的10,且理論上只能儲存Integer。想要建立乙個value 10的Integer應該是用Number b new Integer 10 同理,List ...
c 中如何給類的私有成員賦值?
zhLzm 最好的是通過建構函式給類的私有成員進行初始化 可以有多種初始化建構函式 如果需要在操作中設定某個私有變數基於C 類的封裝特性,最好編寫一個函式去修改需要改變的成員產量。 王祺 假設你的類在a.h中 define private public include a.h undef priva...