+=与=+的区别

墨蓝 2022-05-09 12:33 540阅读 0赞

+=与=+的区别

今天做LeetCode的时候,键盘敲得快了点,后来程序运行结果和设想相差很离谱,于是在关键位置逐行仔细检查代码,发现自己无意间把+=写成了=+(编译并不会报错)。那么+=与=+看起来如此相似,它们有什么样的区别呢?

验证

假定有参数a、b,我们都知道a += b是a = a+b的简写,而a =+ b又是什么呢?

写一段验证的程序就清楚了:

  1. int a = 100;
  2. a += 1;
  3. System.out.println("a1="+a); //a1 = 101
  4. a =+ 1;
  5. System.out.println("a2="+a); //a2 = 1
  6. a =- 1;
  7. System.out.println("a2="+a); //a2 = -1

结论

看结果很容易发现:

  • += 是简写,a += 1就是a = a+1
  • =+并不是简写,a =+ a直接对a的赋值,±符号代表的是正负(完全可以省略不写),即a =+ b其实就是a = b。

发表评论

表情:
评论列表 (有 0 条评论,540人围观)

还没有评论,来说两句吧...

相关阅读

    相关 +==+区别

    \+=与=+的区别 今天做LeetCode的时候,键盘敲得快了点,后来程序运行结果和设想相差很离谱,于是在关键位置逐行仔细检查代码,发现自己无意间把+=写成了=+(编译并