Java:请解释这两个语句之间的区别

时间:2018-09-08 10:44:15

标签: java casting byte

byte b;
b= b+10;

byte b;
b+=10;

第一个实例出错,第二个实例给出正确的输出,任何人都可以在这里解释内部操作

1 个答案:

答案 0 :(得分:0)

b + = 10表示

  1. 找到x标识的地方
  2. 添加10个

但是b = b + 10表示:

  1. 找到b标识的地方
  2. 将b复制到累加器中
  3. 将b添加到累加器
  4. 将结果存储在b
  5. 找到b标识的地方
  6. 将累加器复制到其中

结果都是一样的,但是b + = 10比b = b + 10更可取。您可以在此答案中找到更多详细信息:

https://softwareengineering.stackexchange.com/questions/134118/why-are-shortcuts-like-x-y-considered-good-practice