• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

a++、++a、a+=1和a=a+1?

Java中,a++、++a、a+=1这3个和a=a+1有区别吗(a++和++a区别不用说了)?如果这3个和a=a+1有区别,那么,什么情况下分别使用效果会不一样?最好可以附上例子,谢谢!

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与4

a=a+1,是先取a的值,在进行加加操作。它等同于a++;
a+=1,是先对a进行加1操作,在返回a的值。它等同于++a;
另外

a++ 直接对内存中的值进行加1并且将结果写入内存,更效率
a=a+1 先申请一块内存空间,分别把变量a 和常量1 放入累加器中计算后,再把结果放到内存中.
最后,这三类指令在编译成汇编指令的时候也会有一定的差异,导致运行效率的变化,有兴趣可以去尝试一下。

使用道具 举报

a+=1和a=a+1基本没区别,a++ 和 ++a和a=a+1的区别是a++是先参加程序的运行再+1,而++a则是先+1再参加程序的运行。

举个例子来说:
a=2; b = a++;  运行后: b = 2,a=3
a=2; b = ++a;  运行后: b = 3,a=3;

使用道具 举报

a += 1; 这个和 a = a +1 ; 这两个是一样的 只不过一个是简写
++a 和  a++ 这两个区别在于运算的先后 比如  b = ++a;  这个是a先自增 然后才赋值  
b = a++; 这个是先赋值 后自增

使用道具 举报

++a和a=a+1的关系就相当于a++和++a的关系,其他的没有什么区别,都是更加简洁的写法

使用道具 举报

发新帖

发布任务需求已有1031164位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!