4 回答

TA貢獻1831條經驗 獲得超9個贊
使用DoubleStream
:
變種:
輸入是一個數組
double
double[] values = new double[] {1.1D, 2.33D, 4D}; double average = DoubleStream.of(values).average().getAsDouble();
輸入是
ArrayList
一個Integer
ArrayList<Integer> values = new ArrayList<>(); values.add(1); values.add(42); values.add(-1);
double average = values.stream().mapToDouble(value -> (double) value).average().getAsDouble();

TA貢獻1799條經驗 獲得超6個贊
您可以使用以下代碼片段:(用 kotlin 編寫)
fun main() {
val s: List<Float> = listOf(1.2F, 1.4F, 5.6F)
// populate it with your custom list data
var sum = 0F
s.forEach { it ->
sum+=it
}
println("Sum = $sum and avg = ${sum/(s.size)}")
}
這是java解決方案:
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
List<Float> s = new ArrayList(Arrays.asList(1.2F, 1.3F, 5.4F, 6.5F));
Float sum = 0F;
for (int i=0; i< s.size(); i++) {
sum+=s.get(i);
}
System.out.println("Sum: "+sum+" and Avg: "+sum/(s.size()));
}
}

TA貢獻1817條經驗 獲得超6個贊
以下是如何對 ArrayList 中的所有值求和
ArrayList<Integer> nums = new ArrayList<>();
// Populate ArrayList
int sum = 0;
for (int num : nums) {
sum += num;
}
// Do whatever you want with sum after

TA貢獻1780條經驗 獲得超5個贊
只需在流中使用平均收集器,您不必計算元素的SUM和NUMBER:
ArrayList<Double> numbers = new ArrayList<>() {{
add(1d);
add(2.45d);
add(100d);
}};
final double average = numbers.stream()
.collect(Collectors.averagingDouble(d -> d));
moy[0] = average;
添加回答
舉報