回答編集履歴

1

間違いの解説

2020/04/17 00:26

投稿

xebme
xebme

スコア1090

test CHANGED
@@ -85,3 +85,21 @@
85
85
  list.stream().min(Integer::compare).get();
86
86
 
87
87
  ```
88
+
89
+
90
+
91
+ **間違いの解説**
92
+
93
+
94
+
95
+ 以下の最初の行がComparatorの代わりにInteger.minを指定する間違いです。これと等価なのが第二行目のreduceです。minの結果は正負判定に使われています。どちらも同じ動作であることを確認してください。
96
+
97
+
98
+
99
+ ```Java
100
+
101
+ list.stream().min(Integer::min).get();
102
+
103
+ list.stream().reduce((x,y)->(Integer.min(x,y) <= 0) ? x : y).get();
104
+
105
+ ```