java内x++与++x的区别

理解x++和++x的区别

x++

x++是先取值后自增。

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y = x++;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为2,y的值为1。

解释

int x=1;// x=1

int y = x++;//先y=x=1,再x++=2(即x=x+1=2),所以x=2;y=1

++x

++x是先自增后取值。

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y = ++x;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为2,y的值为2。

解释

int x=1;// x=1

int y = ++x;//先x++=2(即x=x+1=2),再y=x=2,所以x=2;y=2

进阶

++x + ++x

先计算左边的++x,再计算右边的++x,最后加起来就是值

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y=++x + ++x;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为3,y的值为5。

解释

int x=1;// x=1

int y = ++x + ++x;
//注:++x和++x的运算见最上方【理解x++和++x的区别】
//第一步先运算左边++x,此时先x=x+1=2,再++x=2
//第二步运算右边的++x,此时先x=x+1=3,再++x=3
//第三步运算(++x) + (++x),此时x=3,++x + ++x=2+3=5
//所以x的值为3,y的值为5。

x++ + ++x

先计算左边的x++,再计算右边的++x,最后加起来就是值

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y=x++ + ++x;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为3,y的值为4。

解释

int x=1;// x=1

int y = x++ + ++x;
//注:x++和++x的运算见最上方【理解x++和++x的区别】
//第一步先运算左边x++,此时先x++=1,再x=x+1=2
//第二步运算右边的++x,此时先x=x+1=3,再++x=3
//第三步运算(x++) + (++x),此时x=3,x++ + ++x=1+3=4
//所以x的值为3,y的值为4。

x++ + x++

先计算左边的x++,再计算右边的x++,最后加起来就是值

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y=x++ + x++;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为3,y的值为3。

解释

int x=1;// x=1

int y = x++ + x++;
//注:x++和x++的运算见最上方【理解x++和++x的区别】
//第一步先运算左边x++,此时先x++=1,x=x+1=2
//第二步运算右边的x++,此时x++=2,x=x+1=3
//第三步运算(x++) + (x++),此时x=3,x++ + x++=1+2=3
//所以x的值为3,y的值为3。

++x + x++

先计算左边的++x,再计算右边的x++,最后加起来就是值

代码及结果

例如:

public class test {
    public static void main(String[] args) {
        int x=1;
        int y=++x + x++;
        System.out.println(x);
        System.out.println(y);

    }
}

在这里插入图片描述
此时x的值为3,y的值为4。

解释

int x=1;// x=1

int y = ++x + x++;
//注:++x和x++的运算见最上方【理解x++和++x的区别】
//第一步先运算左边++x,此时先x=x+1=2,++x=2
//第二步运算右边的x++,此时x++=2,x=x+1=3
//第三步运算(++x) + (x++),此时x=3,++x + x++=2+2=4
//所以x的值为3,y的值为4。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值