<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久久小说| 国产精品亚洲一区二区麻豆| 精品人妻少妇嫩草AV无码专区| 无码人妻精品一区二区三区蜜桃 | 欲帝精品福利视频导航| 国产精品成人观看视频免费| 2022国产成人精品视频人| 国产精品高清全国免费观看| 精品亚洲成在人线AV无码| 精品福利资源在线| 亚洲国产成人精品91久久久 | 四虎精品亚洲一区二区三区| 麻豆AV无码精品一区二区| 亚洲AV日韩精品久久久久久 | 国产亚洲精品a在线观看| 精品国产一区二区二三区在线观看| 日韩人妻无码精品一专区| 九九久久精品无码专区| 国产精品久久久久久久网站| 久久这里都是精品| 久久久久国产精品熟女影院| 国产伦精品免编号公布| 国产精品五月天强力打造| 日韩久久精品一区二区三区| 97久久精品无码一区二区天美| 日韩精品久久久久久久电影蜜臀| 四虎国产精品免费永久在线| 亚洲精品麻豆av| 国产亚洲精品成人久久网站| 亚洲色在线无码国产精品不卡| 91精品观看91久久久久久| 久久精品亚洲综合专区| 国内少妇偷人精品视频免费| 精品一区二区三区色花堂| 国产成人精品免费视频软件| 在线观看国产精品va| 韩国精品一区视频在线播放| 日本精品视频一视频高清| 国产91精品一区二区麻豆网站 | 92国产精品午夜福利|