import java.util.*;
class MyType implements Comparable
{
private int i;
public MyType(int i)
{
this.i=i;
}
public boolean equals(Object o)
{
System.out.println(((MyType)o).i);
return (o instanceof MyType) && (i==((MyType)o).i); //(MyType)o).i和i应该都是private int i;这个i吧,为什么它们会做比较呢? }
public int hashCode()
{
return i;
}
public int compareTo(Object arg0) 
{
int value=0;
int i2=((MyType)arg0).i;
if(i2<i)
{
value=-1;
}
else if(i2>i)
{
value=1;
}
else
{
value=0; 
}
return value;
}
}
((MyType)o).i 和 i 应该都是在MyType类中定义的int型变量i吧?如果是同一个i,怎么会做==的比较呢?