問題記錄——add也會空指針?

今天在編碼過程中遇到了一個問題,就是給一個list增加數據導致了空指針,這令我十分詫異,後來發現原因是這樣的

List<byte[]> bytes = null;

我是這樣初始化的,這樣只是在棧中有一個引用但並沒有分配內存空間,如果這時我直接向List裏添加對象就是直接向這個引用所指的內存放東西,因爲沒分配內存,所以會報空指針異常;
因此要改爲

List<byte[]> bytes = new ArrayList<>();

這樣棧中的引用指向堆中的空間時,就可以使用堆中的內存,問題解決

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章