我已经创建的断言线如下断言在Java
String title = "A";
int year = 2009;
String director = "Zebra";
VideoObj一个=新VideoObj(名称,年份,导演);
Assert.assertFalse(a.equals(new VideoObj(title+"1", year,director)));
为什么这会失败? 等于方法如下。
public boolean equals(Object thatObject) {
if (!(thatObject instanceof VideoObj))
return false;
VideoObj that = (VideoObj) thatObject;
return ((_title.equals(that.title())) && (_director.equals(that.director())) && (_year == that.year()));
}
,但下面的语句
Assert.assertFalse(a.equals(new VideoObj(title, year, director + "1")));
不会失败? 可以解释为什么第一个断言声明失败,而不是第二个?
什么'了'? – SLaks 2012-01-29 19:53:11
请出示一个简短但完整的程序来展示您的问题。特别是,这是一种奇怪的平等方法。 – 2012-01-29 19:53:15
你的'equals'方法是非常错误的。 – SLaks 2012-01-29 19:53:23