我正在实现 Comparable 接口(interface),并使用它来比较运动队的名称。我注意到这是compareTo 方法最简单的实现。我想知道为什么方法compareTo在方法体中引用它自己。这不是某种永无休止的递归吗?如何通过将方法定义为自身来实现方法?
public int compareTo(Team x)
{
return teamName.compareTo(x.teamName);
}
最佳答案
您没有提供令您困惑的完整代码,但您提供的方法可能属于某个包的 Team
类,并且可能属于该类的 teamName
字段的类型与 Team
不同(我假设它是 java.lang.String
)。在这种情况下,您提供的方法根本不是递归的。方法 some.package.Team.compareTo(some.package.Team)
调用方法 java.lang.String.compareTo(java.lang.String)
,这是一个完全单独的方法。
关于java - CompareTo 方法(在 Comparable 接口(interface)中)是递归的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26288774/