本帖最后由 王亚东 于 2013-3-8 13:20 编辑
- class Demo02
- {
- public static void main(String[] args)
- {
- int i=5;
- //i=i+5.0;// 这句话相当于 i = (double)i+5.0; 5.0是double类型,i是int类型,他们运算时,int会转为double
- i+=5.0;//这里相当于:i = i+(int)5.0; +=是赋值运算符,就是把double强制转为int赋给i
- System.out.println(i);
- }
- }
复制代码 上面是我回答别人的问题的代码,但是后来看到有人对第二句的解释我的理解不一样,说是:
i+=5.0 相当于 i=(int)(i+5.0),虽然感觉二者没什么区别,但还是觉得第一种解释更准确点,大家觉得对吗? |