<strike id="cakm0"></strike>
  • <button id="cakm0"><dl id="cakm0"></dl></button>
  • <samp id="cakm0"><tbody id="cakm0"></tbody></samp>
    <samp id="cakm0"><pre id="cakm0"></pre></samp><ul id="cakm0"></ul>
    <strike id="cakm0"></strike>
    <li id="cakm0"></li>
  • <ul id="cakm0"></ul>
  • 更多精彩內(nèi)容,歡迎關(guān)注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java a++和++a的區(qū)別

    文檔

    java a++和++a的區(qū)別

    java a++和++a的區(qū)別是a++先參與程序的運行,后賦值+1給變量a,++a先賦值+1給變量a,后參與程序的運行。相同點:都是幫當前變量+1。
    推薦度:
    導讀java a++和++a的區(qū)別是a++先參與程序的運行,后賦值+1給變量a,++a先賦值+1給變量a,后參與程序的運行。相同點:都是幫當前變量+1。

    java a++和++a的區(qū)別是什么,讓我們一起了解一下?

    java a++和++a的區(qū)別是a++先參與程序的運行,后賦值+1給變量a,++a先賦值+1給變量a,后參與程序的運行。相同點:都是幫當前變量 +1。

    舉個例子來說:

    public?static?void?main(String[]?args)?{
    ????????int?a?=?1;
    ????????System.out.println(a++);??//?先參與程序的運行,而后才進行賦值,所以輸出為??1;
    ????????System.out.println(a);????//?上一步操作已經(jīng)+1;?所以輸出為?2;
    ????????System.out.println(++a);??//?先進行賦值(先+1),后參與程序的運行,所以輸出為?3;
    ????}

    實際應用:

    1、設(shè)想一個背景

    在完成DRP項目的一個添加功能時,主鍵通過id生成器自動控制。當所有的代碼完成后,執(zhí)行添加時,報錯了“java.sql.SQLException: ORA-00001: 違反唯一約束條件(DRP1.PK_T_CLIENT)”,意思是要插入的主鍵值已存在。

    2、查看控制主鍵的代碼

    value?=?rs.getInt("value");??//從記錄主鍵值的表中獲取當前的value值
    modifyValueField(conn,tableName,value++);??//將加1后的value值更新到表中

    3、分析

    從代碼中可能大家都看出來了,關(guān)鍵就在value++這個參數(shù)。

    java中的運算符有前置++ 和后置++,二者是有區(qū)別的。

    Int a =1;

    i=a++;? 表示先將a的值賦值給i,然后a自身再加1。? ?計算結(jié)果為:i=1,a=2

    i=++a; 表示a先自加1,然后再賦值給i。? ? ? ? ? ? ? ? ? ? 計算結(jié)果為:i=2,a=2

    所以,實際上傳入的參數(shù)value++的值還是原來的值,這就必然導致插入重復的主鍵值。將參數(shù)改成++value 或者在傳參之前先進行一次value++,然后直接傳value參數(shù)都是對++的正確應用。

    代碼表示:

    value?=?rs.getInt("value");??//從記錄主鍵值的表中獲取當前的value值
    ?
    ?modifyValueField(conn,tableName,++value);??//將++value作為參數(shù)傳遞
    ?
    或者
    ?
    value?=?rs.getInt("value");??//從記錄主鍵值的表中獲取當前的value值
    ?
    value++;??//vaue值自增1
    ?
    modifyValueField(conn,tableName,value);??//將新的value值更新到表中

    其實,這是一個基礎(chǔ)問題,在寫代碼的時候總是會出現(xiàn)a++(常見的for循環(huán)中),寫習慣了會導致這里上來就寫a++。現(xiàn)在,回頭看一下那段代碼,是我們經(jīng)常容易出錯的。

    int?a[]?={1,2,3,4,5};
    for(int?i=0;?i

    以上就是小編今天的分享了,希望可以幫助到大家。

    文檔

    java a++和++a的區(qū)別

    java a++和++a的區(qū)別是a++先參與程序的運行,后賦值+1給變量a,++a先賦值+1給變量a,后參與程序的運行。相同點:都是幫當前變量+1。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關(guān)推薦
    茉莉花茶是綠茶嗎 java active 甕安縣屬于哪個市 java activiti java activity 西北五省是哪五省 java actuator java add java addall java advice java aes加密 java aggregation java akka ipad2是哪年的 java algorithm iphone呼叫失敗是什么原因 java android java annotation java ant java apns 熊貓只有中國才有的嗎 idea新建一個java項目 java 32bit java -xms idea新建java項目 祁連山在哪個省境內(nèi) 行程碼帶*號什么意思 南極洲有哪些國家 java -ea 鐵觀音產(chǎn)地是哪個地方 iterator java interface java integer java instant java instance java influxdb java idea編寫java程序 idea怎么建立java idea創(chuàng)建普通java項目 idea創(chuàng)建java
    Top 欧洲熟妇精品视频| 国产精品视频无圣光一区| 成人精品一区二区三区中文字幕| 99视频精品全部在线观看| 久久国产精品鲁丝片| 国产美女精品视频| 国产精品国三级国产aⅴ| 99视频全部免费精品全部四虎| 无码人妻精品一区二区三区99仓本| 北条麻妃久久99精品| 日韩精品一区二区三区中文字幕 | 亚洲AV综合永久无码精品天堂| 久久精品国产亚洲av麻| 国产在线精品一区二区夜色| 免费精品久久久久久中文字幕 | 亚洲日韩精品无码专区加勒比| 久久久久女人精品毛片| 国产成人精品免费久久久久| 亚洲综合精品香蕉久久网| 国产精品igao视频| 亚洲国产高清精品线久久 | 亚洲精品中文字幕乱码影院| 久久国产精品只做精品| 亚洲一区精品无码| 国产小呦泬泬99精品| 69堂国产成人精品视频不卡| 无码国模国产在线无码精品国产自在久国产 | 久久精品国产亚洲av成人| 国产午夜无码精品免费看| 国产在线观看高清精品| 老司机精品视频在线| 91麻豆精品视频| 中文国产成人精品久久亚洲精品AⅤ无码精品| 一区二区国产精品| 国产精品hd免费观看| 久久国产精品二国产精品| 久久精品无码一区二区日韩AV| 中文字幕精品无码亚洲字| 国产成人精品国内自产拍 | 国产精品香蕉在线观看不卡| 精品露脸国产偷人在视频7|