Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

java
exception

How to resolve the "java.util.NoSuchElementException" in Java

Educative Answers Team

The NoSuchElementException in Java is thrown when one tries to access an iterable beyond its maximum limit. The exception indicates that there are no more elements remaining to iterate over ​in an enumeration.

The NoSuchElementException is thrown by the following:

  • iterator::next()
  • Enumeration::nextElement()
  • StringTokenizer::nextElement()
svg viewer

Code

The code below shows some common mistakes that can happen while using the methods above. These mistakes will throw the java.util.NoSuchElementException​.

import java.util.HashSet;
import java.util.Hashtable;
import java.util.Set;
 
public class main {
    public static void main(String[] arguments) {
        Set hshSet = new HashSet();
        Hashtable hshTble = new Hashtable();

        // commands that throw exception. 
        hshSet.iterator().next();
        hshTble.elements().nextElement();
    }
}

Solution

The solution to this​ exception is to check whether the next position of an iterable is filled or empty. You should only move to this position if the check returns that the position is not empty. The following methods are used to check the next position:

  • hasNext()
  • hasMoreElements()

RELATED TAGS

java
exception
Copyright ©2022 Educative, Inc. All rights reserved
RELATED COURSES

View all Courses

Keep Exploring