使用非初始化变量时获取NullPointer

时间:2017-12-10 17:39:51

标签: java nullpointerexception

在尝试为HashTable构建自己的迭代器时,我遇到了一个简单的NullPointerException问题,我想知道这是否是正确的方法。我似乎在代码的allEntries.add部分遇到错误。任何帮助都会非常感激!!

public class HashIterator implements  Iterator<HashNode<K,V> > {
    HashLinkedList<K,V>  allEntries;

    /**
     * Constructor:   make a linkedlist (HashLinkedList) 'allEntries' of all the entries in the hash table
     */
    public  HashIterator()
    {

        //  ADD YOUR CODE BELOW HERE


        for (int i=0; i<numBuckets; i++) {
            HashLinkedList<K,V> currentBucket = buckets.get(i);

            HashNode<K,V> curNode = currentBucket.getHead();
            while (curNode != null) {

                allEntries.add(curNode.getKey(), curNode.getValue());
                curNode = curNode.getNext();
            }

        }

        //  ADD YOUR CODE ABOVE HERE

    }

1 个答案:

答案 0 :(得分:0)

行。在使用之前,您不会初始化allEntries

您需要执行类似

的操作
allEntries = new HashLinkedList<>();