我收到错误消息“无法找到变量月份”。也许这是因为该方法无法访问数组月份来查找其长度。我已将主要的metod与另一个名为SearchMethod的方法结合使用。 有人可以告诉我如何解决这个问题?这是我的代码
import javax.swing.JOptionPane;
public class SearchStringM
{
public static void main(String args[])
{
String[] months = {"January", "February", "March", "April", "May"};
String search = JOptionPane.showInputDialog("Enter the term you wish to search for ");
SearchStringM x = new SearchStringM();
x.SearchMethod(search);
//String r = SearchMethod(search);
}
public static String SearchMethod(String search){
boolean contains = false;
for(int i=0; i<months.length; i++)
{
if(months[i].contains(search))
{
contains = true;
break;
}
}
if(contains)
{
System.out.println("This contains " + search);
}
else
{
System.out.println("This does not contain " + search);
}
return null;
}
}
答案 0 :(得分:2)
在main方法之上声明该变量,以便您可以在该类中使用该变量。
答案 1 :(得分:0)
嘿将6号String[] months = {"January", "February", "March", "April", "May"};
行写入您的函数SearchMethod()
或在类级别定义它。
您收到此错误,因为它在main中声明,并且您正在该方法中使用它。
答案 2 :(得分:0)
months
在主函数中定义 ,因此SearchMethod无法使用它,您必须通过参数将变量发送到函数。
试试这个:
变化:
public static String SearchMethod(String search){
...
到
public static String SearchMethod(String search, String[] months){
...
和
x.SearchMethod(search);
到
x.SearchMethod(search, months);
或者您可以在主要方法
之上声明months