The following will throw an exception, if the personList
is empty or the filtered result is empty:
JavaScript
x
Person b2cInwardAllocTxs = personList.stream()
.filter(x -> x.getName().equalsIgnoreCase("Alvin"))
.findFirst().get();
I get the following error:
JavaScript
Exception: java.util.NoSuchElementException: No value present
How to solve the error?
Actually, I just expect it should return one object or null
.
Advertisement
Answer
get
will throw an exception if called on an empty Optional
. Instead, you could use orElse
to return a null
:
JavaScript
Person b2cInwardAllocTxs =
personList.stream()
.filter(x -> x.getName().equalsIgnoreCase("Alvin"))
.findFirst()
.orElse(null);