生活點滴:java基礎知識細化

生活點滴:java基礎知識細化

1、前言

    越是對一門語言深刻了解,就會發現本身不知道的東西越多,這纔是走向了正道,一樣的,對於java語言特性的學習,筆者也只是初窺門徑。java

2、java基礎知識思考

  i=i++

   首先咱們來看一下「i=i++」這個語句的執行原理。學習

     首先咱們編譯運行一下:spa

    能夠看到執行的結果爲0,爲何呢,咱們反編譯A.class。blog

    咱們能夠看到編號爲2,3,6的三段彙編代碼,其中2表明着將i的值讀入一個變量之中,3表示將讀到的i值自增,6表明將存入臨時變量中的值從新寫入i中,所以以後打印出來的仍是i自己。編譯器

     這個過程能夠表示以下:編譯

temp=i;
i++;
i=temp;

    所以在java中,使用i=i++並不能達到自增的目的,反而是原地踏步,而在C語言中可能會有不一樣的結果,這與編譯器最終的解釋執行有關。class

相關文章
相關標籤/搜索