新手求教。编写一个简单的 Java 程序,计算若干个数的平均值,并输出结果;数据由命令行参数给出

publicclassDemo1{publicstaticvoidmain(String[]args){intsum=0,avg=0,j=0;for(inti=0;i<a... public class Demo1 {
public static void main(String[] args) {
int sum = 0, avg = 0, j = 0;
for(int i = 0; i < args.length; i++) {
sum += Integer.valueOf(args[i]);
j++;
}
avg = sum/j;
System.out.println(avg);
}
}
问题:
(1)程序哪里有错误;
(2)感觉j没什么用,应该怎么优化;
展开
 我来答
chenhao_89
2017-03-17 · TA获得超过1352个赞
知道小有建树答主
回答量:764
采纳率:83%
帮助的人:427万
展开全部

(1)程序没有错误,因为你定义的sum是integer,取平均值的时候会只会取小数点之前的。所以如果你想取小数点之后的,要int换double或者float

(2)你是正确的,j没有用,最后的j其实就是args.length

最后优化代码如下

public class Demo1 {

public static void main(String[] args) {
double sum = 0, avg = 0;
for (int i = 0; i < args.length; i++) {
sum += Double.valueOf(args[i]);
}
avg = sum / args.length;
System.out.println(avg);
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式