java.util.NoSuchElementException: No value present
Code asked for an element that doesn’t exist — Optional.get() on empty, iterator.next() past the end, Scanner with no input.
No value present Meaning
“No value present” comes from Optional.get()/orElseThrow() on an empty Optional. Iterators and Scanner throw it when exhausted.
Common causes
- Optional.get() without checking
- iterator.next() without hasNext()
- Scanner reading beyond input
⚡ Quick fix
- Use orElse/orElseThrow with a clear exception
- Check hasNext()
- Validate input before reading
Detailed fix by platform
Java
User u = repo.findById(id).orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND));
How to diagnose
- Source — Optional, iterator or Scanner?
- Data — Why is it empty?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
Most viewed in Java
Other ways to find it
Where this error sits
Origin: Application & API. Errors that are often confused with or caused by this one (click to open):
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
💬 What worked for others
No tips yet — did something else fix this for you?
Share what worked for you
Tips are checked by an editor before they appear. Links are removed.
Report a correction or suggest an improvement
Last updated 14 Oct 2026