Я хочу знать, что есть способ избавиться от предупреждения в findFirst().get()
без использования .orElse()
, если я знаю, что каждый раз есть результат, поэтому я никогда не получаю NoSuchElementException
. Например, см. Следующий код:
List<String> myList = new ArrayList<>();
myList.add("Test");
myList.add("Example");
myList.add("Sth");
String fisrstString = myList.stream().findFirst().get(); // here I surely get "Test"
Я не знаю, как это делают другие IDE, но моя IDE (IntelliJ) рассматривает это как предупреждение ('Optional.get()' without 'isPresent()'
). Я думаю, вероятно, он не знает, когда вы можете получить NoSuchElementException
там а когда нет, или я не знаю, почему. Я знаю, что есть способы решить это предупреждение (isPresent()
check, .orElse(something)
), но с бесполезным кодом, поэтому просто я не хочу использовать эти решения, потому что они так ненужным.
Есть ли у вас какие-либо идеи, что я могу сделать или объяснить, как это обрабатывается theIDE?
Изменить: Извините за NPE, его NoSuchElementException
У меня была эта ошибка, но я думаю, что вопрос по-прежнему доступен для него.