调用栈的方法报空指针错误

来源:3-1 栈和栈的应用:撤销操作和系统栈

qq_傲世_0

2018-05-31

ArrayStack<Integer> stack=new ArrayStack<Integer>();        

System.out.println(stack.isEmpty());    

    @Override

    public boolean isEmpty(){

    return arr.isEmpty();

    }

    

public boolean isEmpty(){

        return size == 0;

    }

报空指针的错误,用其他方法也是空指针,这会是哪方面的问题?    

写回答

1回答

liuyubobobo

2018-05-31

你的编译器报的具体错误中应该会指出是第几行报的空指针异常。看相应行的位置哪个对象的实例没有被初始化?或者被赋值成为了空指针?比如调用arr.isEmpty(),其中的arr是否初始化了?


这个课程的所有代码,都可以在课程官方github中找到。如果是课程相关代码,请先尝试在自己的环境中运行课程官方代码看是否有问题,如果没有问题,请仔细比对自己的代码和课程官方带吗的区别,查看bug在哪里:)


课程官方github传送门:https://github.com/liuyubobobo/Play-with-Data-Structures


加油!

0
1
qq_傲世_0
构造方法里我加了void导致的。谢谢老师,加油!
2018-05-31
共1条回复

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程