class aaa
{
public static void main(String[] args)
{
long a = 200;
int b = 100;
int c = a + b;
System.out.println(c);
}
}
这段代码提示错误是
aaa.java:7: 可能损失精度
找到: long需要: int
疑问:不是说long a = 100;如果后面不加L或者l的是后就是默认为int类型吗?那么为什么会提示错误呢?
作者: ciowok 时间: 2013-11-5 16:22
错误在第7行,a为long类型,a+b自动提升为long类型,赋值给int类型需要强制类型转换
long a = 200;没问题,200在long的范围之类.作者: ixiangfeng 时间: 2013-11-5 16:46
提示错误的是哪行啊 看清楚啊兄弟作者: 涐扪①起奮乧 时间: 2013-11-5 16:58
class aaa
{
public static void main(String[] args)
{
long a = 200;
int b = 100;
int c = a + b;
System.out.println(c);
}
}