A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 程宏志 中级黑马   /  2012-11-1 20:55  /  1657 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Demo
{
    public static void main(String []args)
    {
      int i=3;
      i=i++;
     System.out.println(i);
    }
}


class Demo
{
    public static void main(String []args)
    {
      int i=3;
      i++;
     System.out.println(i);
    }

以上的两个程序的结果是不相同的,不仔细去看还真以为没什么,但其实是有区别的,这里涉及到自增自减符号参与运算中的相关法则,及当自增自减符号在变量之前,
那么变量是先作自增自减运算,然后在参与运算中,但是如果自增自减符号在变量之后,那么变量是先参与运算,然后再作自增或自减的运算!

将上面  i=++i,那上面两个程序的结果才会是一样的!
同理自减符号也是如此的!

评分

参与人数 1技术分 +1 收起 理由
唐志兵 + 1

查看全部评分

1 个回复

倒序浏览
那么多废话我给你一句话总结:关于变量的自增与自减运算,我总结了如下规律;

1) 关于int b=a++,作用是将a的值先赋给b,然后再让a自增1.

2) 关于int b=++a,作用是将a的值自增1,然后再自增后的结果赋给b,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马