一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語(yǔ)言 - JAVA教程 - java中的自增問(wèn)題介紹

java中的自增問(wèn)題介紹

2020-04-12 16:31jingxian JAVA教程

下面小編就為大家?guī)?lái)一篇java中的自增問(wèn)題介紹。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家。給大家一個(gè)參考。

運(yùn)行下面這段代碼,其結(jié)果是什么呢?

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package com.test;
 
public class Inc {
  
  public static void main(String[] args) {
    Inc inc = new Inc();
    int i = 0;
    inc.fermin(i);
    i = i++;
    System.out.println(i);
  }
 
  void fermin(int i) {
    i++;
  }
}

結(jié)果是:0

上述類似代碼在C/C++中運(yùn)行結(jié)果是:1,這是為什么呢?
 

這是因?yàn)镴ava使用了中間緩存變量機(jī)制:
i=i++;等同于:
temp=i; (等號(hào)右邊的i)
i=i+1;      (等號(hào)右邊的i)
i=temp;   (等號(hào)左邊的i)
而i=++i;則等同于:
i=i+1;
temp=i;
i=temp;


詳解:

jvm里面有兩個(gè)存儲(chǔ)區(qū),一個(gè)是暫存區(qū)(是一個(gè)堆棧,以下稱為堆棧),另一個(gè)是變量區(qū)。

jvm會(huì)這樣運(yùn)行這條語(yǔ)句:

步驟1   jvm把i的值(其值是0)拷貝到臨時(shí)變量區(qū)(temp=0)。

步驟2 變量區(qū)i的值加1,這時(shí)i的值是1。

步驟3 返回臨時(shí)變量區(qū)(temp)的值,注意這個(gè)值是0,沒修改過(guò)。

步驟4 返回值賦值給變量區(qū)的i,此時(shí)i的值被重置成0。


 c/c++中沒有另外設(shè)置一個(gè)臨時(shí)變量或是臨時(shí)空間來(lái)保存i,所有操作都是在一個(gè)內(nèi)存空間中完成的,所以在c/c++中是1。

以上這篇java中的自增問(wèn)題介紹就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。

延伸 · 閱讀

精彩推薦
  • JAVA教程基于Ok+Rxjava實(shí)現(xiàn)斷點(diǎn)續(xù)傳下載

    基于Ok+Rxjava實(shí)現(xiàn)斷點(diǎn)續(xù)傳下載

    這篇文章主要為大家詳細(xì)介紹了基于Ok+Rxjava實(shí)現(xiàn)斷點(diǎn)續(xù)傳下載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下...

    Super_Ks4202019-06-25
  • JAVA教程java中struts配置

    java中struts配置

    本文給大家詳細(xì)分析了在java項(xiàng)目中配置Struts的方法和示例,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。 ...

    hebedich4272019-12-23
  • JAVA教程Java中類的加載順序剖析(常用于面試題)

    Java中類的加載順序剖析(常用于面試題)

    這篇文章主要介紹了Java中類的加載順序剖析(常用于面試題),本文直接給出代碼實(shí)例和運(yùn)行結(jié)果,給后給出了加載過(guò)程總結(jié),需要的朋友可以參考下 ...

    junjie3002019-12-13
  • JAVA教程Java單例模式實(shí)例簡(jiǎn)述

    Java單例模式實(shí)例簡(jiǎn)述

    這篇文章主要介紹了Java單例模式,在Java應(yīng)用程序設(shè)計(jì)中有著非常重要的作用,本文以實(shí)例形式對(duì)此加以簡(jiǎn)單分析,需要的朋友可以參考下 ...

    shichen20145092019-11-29
  • JAVA教程java導(dǎo)出csv方法實(shí)現(xiàn)講解

    java導(dǎo)出csv方法實(shí)現(xiàn)講解

    這篇文章主要介紹了java導(dǎo)出csv的方法,客戶要求在項(xiàng)目中有導(dǎo)出CSV文件的功能,并且給出了如何在不知道如何在不知道對(duì)象類型(沒有應(yīng)用泛型)的List中...

    java技術(shù)網(wǎng)2452019-10-23
  • JAVA教程Java設(shè)計(jì)模式之組合模式(Composite模式)介紹

    Java設(shè)計(jì)模式之組合模式(Composite模式)介紹

    這篇文章主要介紹了Java設(shè)計(jì)模式之組合模式(Composite模式)介紹,Composite定義:將對(duì)象以樹形結(jié)構(gòu)組織起來(lái),以達(dá)成“部分-整體” 的層次結(jié)構(gòu),使得客戶端...

    junjie1472019-12-11
  • JAVA教程深度剖析java動(dòng)態(tài)靜態(tài)代理原理源碼

    深度剖析java動(dòng)態(tài)靜態(tài)代理原理源碼

    這篇文章主要介紹了深度剖析java動(dòng)態(tài)靜態(tài)代理原理源碼,關(guān)于Java中的動(dòng)態(tài)代理,我們首先需要了解的是一種常用的設(shè)計(jì)模式--代理模式,而對(duì)于代理,根據(jù)...

    chen_hao4812019-07-04
  • JAVA教程Hadoop1.2中配置偽分布式的實(shí)例

    Hadoop1.2中配置偽分布式的實(shí)例

    這篇文章主要介紹了Hadoop1.2中配置偽分布式的實(shí)例,使用的系統(tǒng)是linux mint 15 64bit,hadoop使用的是1.2.1版本,需要的朋友可以參考下 ...

    Java教程網(wǎng)2242019-11-21
主站蜘蛛池模板: 欧美视频精品一区二区三区 | 欧美一级高清免费a | 亚洲美女aⅴ久久久91 | 99在线视频免费 | 国产东北三老头伦一肥婆 | 亚洲2卡三卡4卡5卡精品 | 欧美一级h | 成年人在线视频免费观看 | 色综合久久九月婷婷色综合 | 日本妇人成熟免费不卡片 | julia ann黑人巨大 | 亚洲国产欧美另类va在线观看 | 国产精品自在欧美一区 | 色综合天天综合网站中国 | 91制片厂制作传媒破解版免费 | 国产欧美一区二区三区免费看 | 免费超级乱淫视频播放性 | 四虎影视免费观看 | 91影视永久福利免费观看 | 亚洲国产AV一区二区三区四区 | 国产尤物视频 | 精品国产成a人在线观看 | 羞羞视频免费观看网站 | 无人影院在线播放 | 深夜精品高中女学生 | 九九99在线视频 | 精品久久久久中文字幕日本 | 俄罗斯bbbbbbbbb大片 | 国产短视频精品一区二区三区 | 久久精品亚洲牛牛影视 | 成年人视频在线 | 精东影业传媒全部作品 | 男人影院天堂网址 | 午夜无码国产理论在线 | 午夜欧美精品久久久久久久 | 亚洲性视频在线观看 | 欧美干b视频 | 女仆掀起蕾丝裙被打屁股作文 | 穆挂英风流艳史小说 | 日韩在线 中文字幕 | 农夫成人网 |