【发布时间】:2012-12-06 15:43:12
【问题描述】:
可能重复:
Java += operator
在 Java 中,这是无效的(无法编译),正如预期的那样:
long lng = 0xffffffffffffL;
int i;
i = 5 + lng; //"error: possible loss of magnitude"
但这完全没问题(?!)
long lng = 0xffffffffffffL;
int i = 5;
i += lng; //compiles just fine
这显然是一个缩小操作,可能超出int 范围。那么为什么编译器不抱怨呢?
【问题讨论】:
-
这个问题需要讨论而不是一个明确的答案。
标签: java compiler-errors precision