이것은 왜 던지는가 java.lang.NullPointerException
?
List<String> strings = new ArrayList<>();
strings.add(null);
strings.add("test");
String firstString = strings.stream()
.findFirst() // Exception thrown here
.orElse("StringWhenListIsEmpty");
//.orElse(null); // Changing the `orElse()` to avoid ambiguity
첫 번째 항목 strings
IS null
완벽하게 허용되는 값이다. 또한 s 를 처리 할 수 있는 것이 훨씬 더 의미 findFirst()
있는 Optional을 반환합니다 .findFirst()
null
편집 : orElse()
덜 모호하도록 업데이트했습니다 .