标签: java
java += question Why aren’t op-assign operators type safe in java?
java += question
Why aren’t op-assign operators type safe in java?
当i是一个整数且d是double时,i+=d有效但i= i+d没有。
i
d
double
i+=d
i= i+d
为什么会这样?
答案 0 :(得分:1)
i = i + d不起作用,因为你要为int分配一个double,这是不允许的。
+ =运算符会自动将double转换为int,这就是它工作的原因。
这是规范信息的链接: http://java.sun.com/docs/books/jls/second_edition/html/expressions.doc.html#5304