Java核心技術及面試指南面試題,基本數據類型、封裝類和運算操作的面試題


2.1.5.1說說&和&&的區別,以及|與||的區別。

    &和|是位運算符,不怎么用,而&&和||是邏輯運算符,一般用在if,while,for等條件判斷里。

2.1.5.2 運行short s1 = 1; s1 = s1 + 1;會出現什么結果?

    short s1 = 1; s1 = s1 + 1;中,1 是int 型 s1 short型 通過 + 運算后s1 自動轉為int 型 所以報錯。

運行short s1 = 1; s1 += 1;又會出現什么結果?

    這個是正確的,會返回2,但在實際項目中,+1是針對int類型的操作,如果可以,把short改成int。

  2.1.5.3用最有效率的方法算出2乘以8等於多少?

    用移位運算符:int i = 2 << 3;

  2.1.5.4 "=="和equals方法究竟有什么區別?

    ==是比較地址,而在Object里的equals方法,也是判斷地址是否一樣,但在子類里,我們一般會重寫equals方法,比如在String類里,equals方法則是判斷值是否一致。

  2.1.5.5 Integer與int的區別。

    Integer是封裝類,其中包含了int基本數據類型和針對int的一些操作。而int是基本數據類型。

  2.1.5.6 Math.round(12.5)等於多少? Math.round(-13.5)等於多少?

    將括號內的數+0.5之后,向下取值,所以前者是13,后者是-13。

2.1.5.7 float 型float f=3.6是否正確?

    不正確。 精度不准確,應該用強制類型轉換,如下所示:float f=(float)3.6 或float f = 3.6f 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM