我需要计算arg中的整数数量并计算平均值。目前我的代码如下,以粗体显示问题。
int count = args.length;
System.out.println(count);
int sum = 0;
for (int i = 0; i < args.length; i++)
**sum += args[i];**
**// The operator += is undefined for the argument type(s) int, String**
double average = ((double) sum) / args.length;
}
如何使用args.length中的整数计算平均值?
答案 0 :(得分:4)
你的args变量是一个字符串数组,你不能直接将一个String添加到一个int。请改用:
sum += Integer.parseInt(args[i]);
此外,使用for each可以使代码更容易阅读:
for(final String s:args) {
sum += Integer.parseInt(s);
}
答案 1 :(得分:1)
使用sum += Integer.parseInt(args[i]);
答案 2 :(得分:1)
sum += args[i];
应该是
sum += Integer.parseInt(args[i]);
答案 3 :(得分:1)
命令行参数通常被接受为Strings.So您必须先将其转换为数字并像这样使用
sum+=Integer.parseInt(args[i]);
答案 4 :(得分:1)
问题是当您在命令行输入时,从args
参数中获取String。您需要将它们转换为Integer
类型。
使用此,
sum += Integer.parseInt(args[i]);