avg = sum / (double)i;
这样转换方式错了吗,老是报错
在这道题里,会出现 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的类型吧
看起来没错呀