聊聊java變量的初始化之后的默認(rèn)值
變量初始化后的默認(rèn)值
對(duì)于類的成員變量
不管程序有沒(méi)有顯示的初始化,Java 虛擬機(jī)都會(huì)先自動(dòng)給它初始化為默認(rèn)值。
1、整數(shù)類型(byte、short、int、long)的基本類型變量的默認(rèn)值為0。
2、單精度浮點(diǎn)型(float)的基本類型變量的默認(rèn)值為0.0f。
3、雙精度浮點(diǎn)型(double)的基本類型變量的默認(rèn)值為0.0d。
4、字符型(char)的基本類型變量的默認(rèn)為 “/u0000”。
5、布爾性的基本類型變量的默認(rèn)值為 false。
6、引用類型的變量是默認(rèn)值為 null。
7、數(shù)組引用類型的變量的默認(rèn)值為 null。當(dāng)數(shù)組變量的實(shí)例后,如果沒(méi)有沒(méi)有顯示的為每個(gè)元素賦值,Java 就會(huì)把該數(shù)組的所有元素初始化為其相應(yīng)類型的默認(rèn)值。
數(shù)組例子:
1) int[] a; //聲明,沒(méi)有初始化默認(rèn)值是null
2) int[] a=new int[5]; //初始化為默認(rèn)值,int型為0
局部變量初始化
局部變量聲明以后,Java 虛擬機(jī)不會(huì)自動(dòng)的為它初始化為默認(rèn)值。
因此對(duì)于局部變量,必須先經(jīng)過(guò)顯示的初始化,才能使用它。
如果編譯器確認(rèn)一個(gè)局部變量在使用之前可能沒(méi)有被初始化,編譯器將報(bào)錯(cuò)。
例如:
Java 默認(rèn)初始化的簡(jiǎn)單總結(jié)
一、數(shù)組的默認(rèn)初始化
1.一維數(shù)組的默認(rèn)初始化
(1)數(shù)組元素是整型的默認(rèn)初始化值為0
(2)數(shù)組元素是浮點(diǎn)型的的默認(rèn)初始化值為0.0
(3)數(shù)組元素是char型的默認(rèn)初始化值為0或者'\u0000',而非‘0'
(4)數(shù)組元素是boolean型的默認(rèn)初始化值是false
(5)數(shù)組元素是引用類型的默認(rèn)初始化值是null
2.二維數(shù)組的默認(rèn)初始化
二維數(shù)組分為外層數(shù)組的元素和內(nèi)層數(shù)組的元素
例如:int[ ][ ]arr=new int[6][8];
外層元素:arr[0],arr[1],arr[3]等
內(nèi)層元素:arr[0][0],arr[1][2]等
數(shù)組元素的默認(rèn)初始值
(1)初始化方式一:int[ ][ ]arr=new int[6][8]
外層元素的初始化值:地址值
內(nèi)層元素的初始化值:與一維數(shù)組初始化情況相同
(2)初始化方式二:
外層元素的初始化值:null
內(nèi)層元素的初始化值:不能調(diào)用,調(diào)用報(bào)錯(cuò)
二、類的屬性的默認(rèn)初始化
(1)數(shù)組元素是整型(byte,short,int,long)的默認(rèn)初始化值為0
(2)數(shù)組元素是浮點(diǎn)型(float,double)的的默認(rèn)初始化值為0.0
(3)數(shù)組元素是字符型(char)的默認(rèn)初始化值為0或者'\u0000',而非‘0'
(4)數(shù)組元素是布爾型(boolean)的默認(rèn)初始化值是false
(5)數(shù)組元素是引用類型(類,數(shù)組,接口)的默認(rèn)初始化值是null
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringMvc web.xml配置實(shí)現(xiàn)原理過(guò)程解析
這篇文章主要介紹了SpringMvc web.xml配置實(shí)現(xiàn)原理過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08SpringMVC MVC架構(gòu)與Servlet使用詳解
MVC設(shè)計(jì)模式一般指 MVC 框架,M(Model)指數(shù)據(jù)模型層,V(View)指視圖層,C(Controller)指控制層。使用 MVC 的目的是將 M 和 V 的實(shí)現(xiàn)代碼分離,使同一個(gè)程序可以有不同的表現(xiàn)形式。其中,View 的定義比較清晰,就是用戶界面2022-10-10帶你了解Java數(shù)據(jù)結(jié)構(gòu)和算法之鏈表
這篇文章主要為大家介紹了Java數(shù)據(jù)結(jié)構(gòu)和算法之鏈表 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-01-01Spring注解中@Autowired和@Bean的區(qū)別詳解
這篇文章主要詳細(xì)介紹了Spring注解中@Autowired和@Bean二者有什么區(qū)別,文中通過(guò)兩個(gè)注解的使用場(chǎng)景介紹了二者的區(qū)別,感興趣的同學(xué)可以參考閱讀2023-06-06Java實(shí)現(xiàn)企業(yè)員工管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)企業(yè)員工管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02