1

我正在为计算机类编写一个使用 A* 的程序,但似乎无法让 contains 方法按我的需要运行。我正在使用一对优先级队列来保存我定义的 Node 类的对象。我在 Node 类中编写了一个 equals 方法,它在单独的基础上工作得很好,而且,据我所知,当我自己调用它时,它也会覆盖 Object 类的基本 equals 方法。

但是,调用 contains 方法不会检测到“相同”的节点。我的印象是包含使用等于来确定队列是否确实包含有问题的对象。我已经搞砸了,并且对原因感到很困惑,这让我相信我对包含工作方式的理解是有缺陷的,但是,据我所知,Java 文档看起来应该工作。

任何正确方向的建议或指示将不胜感激,谢谢。

4

0 回答 0