下面我试图创建一个方法,通过数组搜索某个字符串并返回它的位置,如果不存在,那么-1应该是返回的数字。下面我使用该方法搜索一个单词,即使该单词在数组内,它也会返回-1。为什么是这样?搜索数组中的字符串
String answer = "";
System.out.println("Enter word to search within array");
answer = in.next();
public static int search(String[] theWords, String answer) {
int a = -1;
for(int i = 0; i < theWords.length; i++) {
if (answer.equals(theWords[i])){
a = i;
break;
}
}
return a;
}
你可以直接从'if'条件本身返回'a'。 – Srinivas
首先:'Arrays.asList(theWords).indexOf(answer)'是你的朋友。另一方面,您应该展示何时失败的完整示例。对我来说看起来很好(不是我写的代码,但它应该可以工作) - 所以你应该帮助我们重现问题。 –
我的猜测可能是'答案'和'theWords [i]'是不同的情况。你是否尝试过'answer.equalsIgnorecase(theWords [i])'? – PermGenError