- 相關推薦
關于java基本數據類型的五道面試題
1. int 和 Integer 有什么區別?
答:Java 提供兩種不同的類型:引用類型和原始類型(或內置類型)。Int是java的原始數據類型,Integer是java為int提供的封裝類。Java為每個原始類型提供了封裝類。原始類型封裝類boolean Boolean char Character byteByte short Short int Integer long Long float Float double Double 引用類型和原始類型的行為完全不同,并且它們具有不同的語義。引用類型和原始類型具有不同的特征和用法,它們包括:大小和速度問題,這種類型以哪種類型的數據結構存儲,當引用類型和原始類型用作某個類的實例數據時所指定的缺省值。對象引用實例變量的缺省值為 null,而原始類型實例變量的缺省值與它們的類型有關。
2. String是最基本的數據類型嗎?
答:基本數據類型包括byte、int、char、long、float、double、boolean和short。 java.lang.String類是final類型的,因此不可以繼承這個類、不能修改這個類。為了提高效率節省空間,我們應該用StringBuffer類.還可以從內存角度來理解去回答這樣的問題。
3. String 和StringBuffer的區別:
答:JAVA平臺提供了兩個類:String和StringBuffer,它們可以儲存和操作字符串,即包含多個字符的字符數據。這個String類提供了數值不可改變的字符串。而這個StringBuffer類提供的字符串進行修改。當你知道字符數據要改變的時候你就可以使用StringBuffer。典型地,你可以使用StringBuffers來動態構造字符數據。
4. short s1 = 1; s1 = s1 + 1;有什么錯?
答:short s1 = 1; s1 += 1;有什么錯? short s1 = 1; s1 = s1 + 1; (s1+1運算結果是int型,需要強制轉換類型) short s1 = 1; s1 += 1;(可以正確編譯).
5. char型變量中能不能存貯一個中文漢字?
答:能夠定義成為一個中文的,因為java中以unicode編碼,一個char占16個字節,所以放一個中文是沒問題的。