1

我需要计算 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 中的整数计算平均值?

4

5 回答 5

4

您的 args 变量是一个字符串数组,您不能直接将字符串添加到 int 中。改用这个:

sum += Integer.parseInt(args[i]); 

此外,使用 for each 可以使代码更易于阅读:

for(final String s:args) { 
    sum += Integer.parseInt(s); 
}
于 2011-08-10T10:00:51.773 回答
1

采用sum += Integer.parseInt(args[i]);

于 2011-08-10T09:57:53.530 回答
1
sum += args[i];

应该

sum += Integer.parseInt(args[i]);
于 2011-08-10T09:58:58.707 回答
1

命令行参数通常被接受为字符串。所以你必须首先将它转换为数字并像这样使用它

sum+=Integer.parseInt(args[i]);
于 2011-08-10T10:01:12.630 回答
1

问题是args当您在命令行上输入参数时,您会从参数中获取字符串。您需要将它们转换为 type Integer

用这个,

sum += Integer.parseInt(args[i]);
于 2011-08-10T10:01:13.280 回答