public class Test
{
private String value = null;
public Test(String v)
{
value = v;
{
if(o==this)
return true;
if(o instanceof Test)
{
Test test = (Test)o;
return value.equals(test.value);
}
return false;
}
public static void main(String[] args)
{
List list = new ArrayList<Test>();
Test test1 = new Test("object");
Test test2 = new Test("object");
Test test3= new Test("object");
Object test4= new Test("object");
list.add(test1);
System.out.println(list.contains(test2));
System.out.println(test2.equals(test3));
System.out.println(test3.equals(test4));
}
}
{
private String value = null;
public Test(String v)
{
value = v;
}
//此处只是重载了equal方法,并没有重写equal方法
public boolean equals(Test o){
if(o==this)
return true;
if(o instanceof Test)
{
Test test = (Test)o;
return value.equals(test.value);
}
return false;
}
public static void main(String[] args)
{
List list = new ArrayList<Test>();
Test test1 = new Test("object");
Test test2 = new Test("object");
Test test3= new Test("object");
Object test4= new Test("object");
list.add(test1);
System.out.println(list.contains(test2));
System.out.println(test2.equals(test3));
System.out.println(test3.equals(test4));
}
}