Java中i + = d和i = i + d之间有什么区别?

时间:2009-03-06 20:41:20

标签: java

重复:

  

java += question

     

Why aren’t op-assign operators type safe in java?

i是一个整数且ddouble时,i+=d有效但i= i+d没有。

为什么会这样?

1 个答案:

答案 0 :(得分:1)

i = i + d不起作用,因为你要为int分配一个double,这是不允许的。

+ =运算符会自动将double转换为int,这就是它工作的原因。

这是规范信息的链接: http://java.sun.com/docs/books/jls/second_edition/html/expressions.doc.html#5304