我目前在一个项目中,我必须制作一个二进制搜索树,并且在实现getRootData方法时遇到了一些问题

我已经尝试导入其他内容或尝试找到实现的方法,但是我没有发现任何运气。

public T getRootData() {
    if (isEmpty())
        throw new EmptyTreeException();
    else
        return root.getData();
}


我应该为EmptyTreeExcpetion写一个类还是其他需要做的事情?

最佳答案

所以首先您必须编写一个EmptyTreeException类,因为为此没有此类内置类

public class EmptyTreeException extends RuntimeException
{
    public EmptyListException()
    {
        super ("Tree is Empty");
    }
}


现在,您必须像这样更改getRootData()

public T getRootData() throws EmptyTreeException
{
    if (isEmpty())
        throw new EmptyTreeException();
    else
        return root.getData();
}


编辑:您不必更改您的getRootData(),就像其他SO用户提到的那样,EunTimeException是“未经检查的异常”,因此无需在方法标头之后执行此throws EmptyTreeException

10-08 08:57