[英]String method cannot be found in a main class method
我有大約一年的Java編程經驗,我在主類中創建了一個靜態方法,由於某種原因,每當我編譯它時,都會出現一個錯誤,提示找不到String類的compareTo()方法。 。
方法如下:
public static void displaySpecificResort(String resortName, Resort[] resortList)
{
int low = 0;
int high = resortList.length - 1;
int mid;
while (low <= high)
{
mid = low + (high - low);
if (resortList[mid].compareTo(resortName)<0)
low = mid + 1;
else if (resortList[mid].compareTo(resortName)>0)
high = mid - 1;
else resortList[mid].display();
}
if(resortList[mid].getName().compareTo(resortName)!= 0)
System.out.println("Resort could not be found.");
}
這是我嘗試編譯時給我的錯誤:
ResortOrganizer.java:157: error: cannot find symbol
if (resortList[mid].compareTo(resortName)<0)
^
符號:方法compareTo(String)位置:類Resort
ResortOrganizer.java:159: error: cannot find symbol
else if (resortList[mid].compareTo(resortName)>0)
^
符號:方法compareTo(String)位置:類Resort
2個錯誤
有人可以解釋為什么這樣做嗎? 我有種忘記重要的感覺的感覺。
看來您的Resort
方法沒有聲明compareTo
方法。 此方法通常屬於Comparable
接口。 確保您的課程實現了它。
此外, compareTo
方法通常實現為接受與調用該方法的對象相同類型的參數。 因此,您不應傳遞String
參數,而應傳遞Resort
。
另外,您可以比較度假村的名稱。 例如
if (resortList[mid].getResortName().compareTo(resortName)>0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.