1、使用int转换浮点数,会发生精度损失,强行转换将小数点后数直接舍弃,不进行四舍五入;
double d1=6;
System.out.println(d1);
//不发生精度损失,可直接转换;
//douoble-->int
int i1=(int)6.5;
System.out.println(i1);
//会发生精度损失,不加(int)强行转换会报错;
//强行转换将小数点后数直接舍弃,不进行四舍五入;
2、对于整型,无法使用科学计数法对其进行赋值。只有浮点型才可以;
以下两种写法都是错误的。
int i3=1e2;
double d3=2e2L;