如何为普通计算器编写Java代码

时间:2019-03-13 23:11:13

标签: java average calculator

我是Java的新学生(我在家学习),我试图从无法实现的代码开始解决此问题,问题说:

“假设您有五个输入值和“平均值”方法,请计算平均值方法中五个输入值的平均值,然后将其返回”  这是代码:

public class MyCalculator { 

 int input1 = 10; 
 int input2 = 20; 
 int input3 = 30; 
 int input4 = 40; 
 int input5 = 50;

 public float average() {

  // TODO: write java code to calculate the average for all input variables 

   return 0; 
 }
}

1 个答案:

答案 0 :(得分:1)

这里有一个传统方式的示例

public float average(int... inputs) {
    long sum = 0;
    for (int i : inputs) {
        sum += i;
    }
    if (inputs.length == 0) {
        return 0;
    } else {
        return (float) sum / inputs.length;
    }
    //return inputs.length == 0 ? 0 : (float) sum / inputs.length;
}
  

请注意,如以下说明所述,强制转换为(float)的重要性。


最优雅的 Java 8方式

public float average(int... inputs) {
    return (float) Arrays.stream(inputs).average().orElse(0);
}
  

您可以查看Integer division to float result以获得更好的解释和其他示例。


最后,您可以像这样使用它:

float result = average(input1, input2, input3, input4, input5);
  

此外,您可能想看看这篇文章:Java 8 Stream and operation on arrays