所以我创建了一个员工对象和一个驱动程序。驱动程序包含一个Employees 的ArrayList,这个特定的方法返回名字按字母顺序排在第一位的Employee。
让我们在 ArrayList 'staff' 中添加两个员工,并称他们为“a”和“z”。
出于某种原因,当我期望它返回员工“a”时,它总是返回员工“z”。我是否正确使用了 compareTo 方法,还是完全不同?
public Employee first()
{
int guy = 0;
for ( int x = 1 ; x < staff.size() ; x ++ )
{
if ( staff.get( x -1 ) instanceof Employee && staff.get( x - 1 ).getName().compareTo( staff.get( x ).getName() ) < 0 )
guy = x - 1;
}
return ( (Employee) staff.get( guy ) );
}