课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
avg = sum / (double)i;
这样转换方式错了吗,老是报错
2016-02-14
源自:Java入门第一季(IDEA工具)升级版 6-6
正在回答
在这道题里,会出现 i = 0;的情况,而 0 不能做分母,所以你运行就会报错,不是你的转换出问题了,而是运算出问题了,而且int类型的 i 会自动转换为double类型,不需要强制转换
public class Hello { public static void main(String[] args) { double sum = 10.0; double avg = 0; for (int i = 1; i < 10; i++) { avg = sum / (double) i; //其实不需要强制类型转换!int的i自动转换成double System.out.println("avg= " + avg); } } }
没错的 查看下 avg sum的类型吧
Minke 提问者
跳跃的鱼 回复 Minke 提问者
看起来没错呀
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
3 回答java强制类型转换
1 回答Java中的强制类型转换
2 回答Java中的自动类型转换?应该叫隐式类型转换吧?
2 回答java中数据类型自动类型转换为什么转换顺序
3 回答JAVA中自动类转换