Java 在主类方法中找不到字符串方法
我有大约一年的Java编程经验,我在主类中创建了一个静态方法,出于某种原因,每当我编译它时,都会出现一个错误,即无法找到String类中的compareTo()方法 方法如下:Java 在主类方法中找不到字符串方法,java,string,class,methods,main,Java,String,Class,Methods,Main,我有大约一年的Java编程经验,我在主类中创建了一个静态方法,出于某种原因,每当我编译它时,都会出现一个错误,即无法找到String类中的compareTo()方法 方法如下: public static void displaySpecificResort(String resortName, Resort[] resortList) { int low = 0; int high = resortList.length - 1; int mid;
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.");
}
符号:方法比较(字符串)
地点:class度假村
ResortOrganizer.java:159: error: cannot find symbol
else if (resortList[mid].compareTo(resortName)>0)
^
2个错误
有人能解释一下为什么会这样吗?我有一种感觉,我忘记了一些重要的事情。你的
度假酒店方法似乎没有声明与方法的比较。此方法通常属于接口。确保您的类实现了它
此外,compareTo
方法通常实现为接受与调用该方法的对象类型相同的参数。因此,您不应该传递String
参数,而应该传递Resort
或者,您可以比较度假村的名称。比如说
if (resortList[mid].getResortName().compareTo(resortName)>0)
似乎您的Resort
方法没有声明compareTo
方法。此方法通常属于接口。确保您的类实现了它
此外,compareTo
方法通常实现为接受与调用该方法的对象类型相同的参数。因此,您不应该传递String
参数,而应该传递Resort
或者,您可以比较度假村的名称。比如说
if (resortList[mid].getResortName().compareTo(resortName)>0)
似乎您的Resort
方法没有声明compareTo
方法。此方法通常属于接口。确保您的类实现了它
此外,compareTo
方法通常实现为接受与调用该方法的对象类型相同的参数。因此,您不应该传递String
参数,而应该传递Resort
或者,您可以比较度假村的名称。比如说
if (resortList[mid].getResortName().compareTo(resortName)>0)
似乎您的Resort
方法没有声明compareTo
方法。此方法通常属于接口。确保您的类实现了它
此外,compareTo
方法通常实现为接受与调用该方法的对象类型相同的参数。因此,您不应该传递String
参数,而应该传递Resort
或者,您可以比较度假村的名称。比如说
if (resortList[mid].getResortName().compareTo(resortName)>0)
让我们看看你的度假村
课程,我们可以告诉你问题出在哪里。你的mid只是mid=high
,也许你的意思是mid=low+(high-low)/2代码>或mid=(低+高)>>1
向我们展示您的度假村
课程,我们可以告诉您问题所在。您的mid只是mid=high
,也许您的意思是mid=low+(high-low)/2代码>或mid=(低+高)>>1
向我们展示您的度假村
课程,我们可以告诉您问题所在。您的mid只是mid=high
,也许您的意思是mid=low+(high-low)/2代码>或mid=(低+高)>>1
向我们展示您的度假村
课程,我们可以告诉您问题所在。您的mid只是mid=high
,也许您的意思是mid=low+(high-low)/2代码>或mid=(低+高)>>1代码>啊!多么愚蠢,我忘了使用Resort类中的getter方法来比较Resort对象中的字符串字段和参数。这似乎解决了问题。谢谢你的回答!啊!!多么愚蠢,我忘了使用Resort类中的getter方法来比较Resort对象中的字符串字段和参数。这似乎解决了问题。谢谢你的回答!啊!!多么愚蠢,我忘了使用Resort类中的getter方法来比较Resort对象中的字符串字段和参数。这似乎解决了问题。谢谢你的回答!啊!!多么愚蠢,我忘了使用Resort类中的getter方法来比较Resort对象中的字符串字段和参数。这似乎解决了问题。谢谢你的回答!