Java 我应该如何解决这个ClassCastException?

Java 我应该如何解决这个ClassCastException?,java,Java,在执行BFS时向链表添加顶点时获取ClassCastException。需要帮助吗 信息:顶点是一个用户定义的类,具有边类对象的链接列表 这是我的密码: private void reachable() { clearAll(); for (Vertex v : vertexMap.values()) v.setColor("white"); for (Vertex s : vertexMap.values())

在执行BFS时向链表添加顶点时获取ClassCastException。需要帮助吗 信息:顶点是一个用户定义的类,具有边类对象的链接列表

这是我的密码:

private void reachable() {
        clearAll();

        for (Vertex v : vertexMap.values())
            v.setColor("white");

        for (Vertex s : vertexMap.values())
            if (s.isStatus())
                bfs(s);
    }

    private void bfs(Vertex s) {

        s.setColor("gray");
        s.dist = 0;
        s.prev = null;

        Queue<Vertex> vertices = new PriorityQueue<Vertex>();
        vertices.add(s);

        while (!vertices.isEmpty()) {
            Vertex u = vertices.remove();
            for (Iterator i = u.adjacent.iterator(); i.hasNext();) {
                Edge edge = (Edge) i.next();
                Vertex adj = edge.getDestVertex();
                if (!adj.getName().equals(u.getName()) && adj.isStatus())
                    if (adj.getColor().equals("white")) {
                        adj.setColor("gray");
                        adj.dist = u.dist + 1;
                        adj.prev = u;
                        vertices.add(adj);
                    }
            }
            u.setColor("black");
        }
    }
private void reachable(){
clearAll();
对于(顶点v:vertexMap.values())
v、 设置颜色(“白色”);
对于(顶点s:vertexMap.values())
如果(s.isStatus())
bfs(s);
}
专用空心bfs(顶点s){
s、 设置颜色(“灰色”);
s、 dist=0;
s、 prev=null;
队列顶点=新的优先级队列();
顶点。添加;
而(!vertices.isEmpty()){
顶点u=顶点。移除();
for(迭代器i=u.innect.Iterator();i.hasNext();){
边边=(边)i.next();
顶点调整=边。getDestVertex();
如果(!adj.getName().equals(u.getName())和&adj.isStatus())
如果(adj.getColor()等于(“白色”)){
形容词setColor(“灰色”);
调整距离=u距离+1;
形容词prev=u;
顶点。添加(adj);
}
}
u、 setColor(“黑色”);
}
}

我猜问题出在这里:

    Queue<Vertex> vertices = new PriorityQueue<Vertex>();
    vertices.add(s);  // <<<---- HERE
队列顶点=新建优先级队列();

顶点。添加(s);//使用完整stacktrace发布异常不是一个坏主意。线程“main”java.lang.ClassCastException中的异常:project2.Vertex不能转换为java.lang.Compariable在上述代码中没有转换为
java.lang.Compariable
。请在问题中添加完整的堆栈跟踪(不是作为注释!)