二元运算符“/”的错误操作数类型第一种类型字符串第二种类型 int

Bad Operand types for binary operator '/' first type String second type int

javabean 的新手,如果过于简单请见谅:

编写 javabean 页面时出现此错误。代码基本上要求将 7 个值加在一起,然后将总数除以 160。代码是:

public String getAverage(){
return (Str1 + Str2 + Str3 + Str4 + Str5+ Str6+ Str7) / (160);
                 add 7 values and then divide answer by 160.

我在这里做错了什么?

您需要改为执行以下操作:

public double getAverage(){        
    String[] inputs = new String[]{Str1, Str2, Str3, Str4, Str5, Str6, Str7};
    int sum = 0;
    for (String input : inputs) {
        sum += Integer.parseInt(input);
    }      
    return sum / 160d;
}

需要考虑的事项:

  • 如果您要从 int 个值
  • 的列表中计算平均值,您应该 return 从方法中得到 double
  • 您不能按照您建议的方式将 String 相加;您需要在添加
  • 之前将它们转换为 ints
  • Java中的变量名应以小写字母开头(str1str2而不是Str1Str2)。
  • 你应该尽量减少变量的范围;在您的示例中, Str1...Str7 是全局变量,这使得跟踪它们可能被修改的位置变得更加困难。考虑通过如下声明签名将输入作为参数传递给方法:

    public double getAverage(String... inputs)