zoukankan      html  css  js  c++  java
  • java中a++与++a区别

    java中a++与++a区别

    a++与++a的区别,如果单独使用没有任何区别,如果在运算中就有区别了,a++是先运算在赋值,而++a是先赋值在运算!!

    先看a++的代码哦

    class demo1 
    {
        public static void main(String[] args) 
        {
                   int a=20;
            int b=19;
            /*
            先运算在赋值;
            1. b先和a作比较,b比a小为假,所以a还是20;
            2. b在自增加1,所以b为20;
            3. 因为三元判断为假,所以c等于自增后的b加a为40;
    
            */
            int c= b++>=a ? a++:a+b;
            System.out.println(a);//结果是:20
            System.out.println(b);//结果是:20
            System.out.println(c);//结果是:40
        }
    }

    上面的代码中的b就是指a++中的a哦

    b++先运算在赋值;
    1. b先和a作比较,b比a小为假,所以a还是20;
    2. b在自增加1,所以b为20;
    3. 因为三元判断为假,所以c等于自增后的b加a为40;

    下面是++a的代码

    class demo1 
    {
        public static void main(String[] args) 
        {     
                    int A=20;
            int B=19;
            /*
            先赋值在运算;
            1.B先自增为20;
            2.三元运算自增后的B等于A,所以c等于20;
            3.因为三元运算为真,所以A自增1为21;
            */
            int C= ++B>=A ? A++:A+B;
            System.out.println(A);//结果是:21
            System.out.println(B);//结果是:20
            System.out.println(C);//结果是:20
    
        }
    }

    同样的,上面的代码中的B就是指++a中的a哦

    ++B先赋值在运算;
    1.B先自增为20;
    2.三元运算自增后的B等于A,所以c等于20;
    3.因为三元运算为真,所以A自增1为21;

    不喜勿喷,毕竟是初学者哦

  • 相关阅读:
    macOS npm install -g npm失败提示无权限
    js中的展开运算符
    vite启动项目
    export与export default区别
    vue3新特性拾遗
    isRef, isReactive 与 isReadonly的原理
    shallowReactive与reactive的原理浅析
    shallowReadonly 与 readonly原理浅析
    shallowRef与ref的原理浅析
    设计模式-资料相关
  • 原文地址:https://www.cnblogs.com/zxdbky/p/6065274.html
Copyright © 2011-2022 走看看