と整数のソートリストはあなたが最大値を取得したい場合、あなたはのJava 8 - ヌル
OptionalInt max = integers.stream()
.mapToInt(Integer::valueOf)
.max();
これを試すことができます今はnull vaues
List<Integer> integers = Arrays.asList(null, 9, 11, 7, 5, null);
を含む整数のリストを持っているとしましょうリストにnullが含まれていない場合は機能します。私たちの場合、NullPointerExceptionが存在します。いくつかの研究の後、私はあなたが非ヌルその後、ヌルがあまり考慮すれば、それは動作します
Optional<Integer> max = integers.stream()
.max(Comparator.nullsFirst(Comparator.naturalOrder()));
このようなソリューションを見ることができます。あなたは彼らが大きくなるとnullsLast
にOptional<Integer> max = integers.stream()
.max(Comparator.nullsLast(Comparator.naturalOrder()));
をnullsFirstを変更したい場合はしかし、その後、あなたは再びNullPointerExceptionが会う予定です。
私は面白いです - なぜnullsLastは、この場合、ヌルフレンドリーであると書かれていることを考慮して動作しませんか? nullを含む整数のリストをソートする最善の方法は何ですか?
あなたのアイデアをお寄せいただきありがとうございます。