ストリームAPIの問題のコードを実際に試してみた

紫本の中の問題のコードをdokojavaさんのところで確認してみたんやが、なぜか平均の20.0ではなく、15.0が表示されてしまう。どういうことだ?ストリームにあるリテラルを合わせると60.0やから、/3ではなく/4の数字なっちゃってるんだけど、どこで4になるのか、さっぱり分からない。

 

import java.util.stream.*;

public class Main {
    public static void main(String[] args) {
        double result = DoubleStream.of(10.0, 20.0, 30,0)
        .mapToInt(x -> (int)x)
        .boxed()
        .collect(Collectors.averagingInt(x -> x));
        System.out.println(result);
    }
}