java面試基礎題---遇到的坑

來源:互聯網
上載者:User

標籤:定義   運行   ++   組成   分享圖片   屬性   電腦   ==   分享   

當做了這些題感覺自己的java基礎都是假的,坑太多

坑一,關於封裝類的
Integer num1=127;integet num2=127;System.out.println(num1==num2);

此題答案是

但是當我們把範圍放到小於-128 和 大於 127,那麼答案又不一樣了

坑二,關於java類屬性載入和記憶體模型
package test;public class Demo1 {    int i=getJ();    int j=0;    public int getJ() {        j=10;        System.out.println(i);        return j;    }    public static void main(String[] args) {        Demo1 demo=new Demo1();        System.out.println(demo.j);                 }}

選項A,能否正確運行 B,一個輸出結果 C, 0和10 D,0和0
看看答案

看看另一種情況j在前面定義的時候

坑三,
package test;public class Demo1 {    public static void main(String[] args) {        int num=0;        for(int i=0;i<100;i++) {            num=num++;        }        System.out.println("num="+num);    }}

不知大家第一次有沒有被這道題坑過,很多人的答案可能是100反正我是很糾結,看看答案吧

但我們換個參數去接它,再看看結果

坑四,關於與或非的
public static void main(String[] args) {        int n=100;        int m=20;                if(m<=20 && n==n++)        System.out.println(n);        System.out.println(m);        }

請說出結果,這個相對比較簡單,應該不會有太多人被坑

當我們把等號去掉

載變換一下,結果又不一樣了

public static void main(String[] args) {        int n=100;        int m=20;                if(m<=20 || n==n++)        System.out.println(n);        System.out.println(m);}

再看看結果

再變化一下,再看看結果

還有種坑,就是考眼神和細心的了,不注意看就會說m=20

坑五,關於基本類型的轉換的
public static void main(String[] args) {                short s=10;        s=s+2;        System.out.println(s);}

這個稍微仔細看,對基本類型理解的人就容易看出來,這是編譯器會報錯的,輸不出結果的,這裡的2預設是int類型,short+int自動轉換為int型

大家再仔細看看這個細節,因為這些變數類型我們還是很少用,可能不是很注意,這麼寫就不報錯了

還有一個就是關於byte的,看圖

這裡是一個迴圈(-128~~127),好像是關於補碼的一個轉換,電腦群組成原理好像可以解釋通,我忘得差不多了,

java面試基礎題---遇到的坑

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.