簡體   English   中英

compareTo方法(在Comparable接口中)是否是遞歸的?

[英]Is the compareTo method (in the Comparable interface) recursive?

我正在實現Comparable接口,並使用它來比較運動隊的名稱。 我注意到這是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) ,這是一個完全獨立的方法。

如果teamNameString類型,則調用String的compareTo(...)

teamName可能是String 因此,它使用String.compareTo()方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM