【问题标题】:Java returning int from ArrayList<Integer> method [closed]Java 从 ArrayList<Integer> 方法返回 int [关闭]
【发布时间】:2014-11-17 15:48:56
【问题描述】:
我创建了一个接收ArrayList<Integer> 的简单方法,然后将平均数作为double 返回。
代码:
public static ArrayList<Integer> tempGsnitt(ArrayList<Integer> temperatur){
double sum = 0;
for(int i = 1; i < temperatur.size(); i++)
sum += temperatur.get(i);
sum = sum/temperatur.size();
return sum;
}
但我收到一个错误,该方法需要 ArrayList 返回。所以我的问题是;如何从ArrayList 方法返回double?
【问题讨论】:
标签:
java
for-loop
arraylist
return
【解决方案1】:
你的返回类型是ArrayList,改成double。
public static double tempGsnitt(ArrayList<Integer> temperatur){
double sum = 0;
for(int i = 1; i < temperatur.size(); i++)
sum += temperatur.get(i);
sum = sum/temperatur.size();
return sum;
}
【解决方案2】:
为什么不返回double?
public static double tempGsnitt(ArrayList<Integer> temperatur)
【解决方案3】:
您将输入法参数与返回类型混淆了。您的方法需要将 ArrayList 作为参数(输入法),并且需要返回一个双精度值。
public static double tempGsnitt(ArrayList<Integer> temperatur){
double sum = 0;
for(int i = 1; i < temperatur.size(); i++)
sum += temperatur.get(i);
sum = sum/temperatur.size();
return sum;
}
【解决方案4】:
通过返回 double:
public static double tempGsnitt(ArrayList<Integer> temperatur) {
// Your code
}
【解决方案5】:
只需将返回类型更改为double
public static double tempGsnitt(ArrayList<Integer> temperatur){}
现在你的方法看起来像这样
public static double tempGsnitt(ArrayList<Integer> temperatur){
double sum = 0;
for(int i = 1; i < temperatur.size(); i++) {
sum += temperatur.get(i);
}
sum = sum/temperatur.size();
return sum;
}