一句话博客:
自定义类的容器的contains函数需要重载equals函数,格式需要@Override和equals的参数列表中应该是Object类的。
具体分析过程
在完成mit实验作业的时候,add函数需要遍历list 找寻相同的对象。
对Vertex类的equals函数定义如下:
// methods
public boolean equals(Vertex that) {
return vertexName.equals(that.vertexName);
}
在添加add函数的时候,需要,判断是否已经存在。
然而在调用contains函数的时候,Junit检测add函数出错。最后确定是contains函数判断的问题。
然后放弃contains,遍历整个list,进行逐个的equals的检查,才通过了测试。
埋下了这个坑,所以写这个博客为了填坑。。。