在数组中搜索字符串并返回位置

Searching for a String in an Array and returning the position

您好,我是编程方面的新手,我尝试在数组中搜索某个 String。当找到该方法时,该方法应该 return 索引,但是如果找不到 String 它应该 return -1.

public int poitionOfWord(String testWord) {
    for (int i = 0; i < wordArray.length; i++) {
        if (wordArray[i].equals(testWord)) {
            return i;
        }
    }
    return -1;
}

这个方法 return 总是 -1 还是它会在找到一个词时实际终止并且会 return i.

您的方法是正确的,如果找到匹配项,它将 return 索引;如果找不到匹配项,它将跳出循环并 return -1。

为了让代码简洁明了,你可以这样使用,

public static String[] wordArray = new String[]{"a", "b"};
public static int poitionOfWord(String testWord) {
    return Arrays.asList(wordArray).indexOf(testWord);
}

然后用一些代码测试一下,

public static void main(String args[]) {
    System.out.println(poitionOfWord("a"));
    System.out.println(poitionOfWord("z"));
}

这会打印,

1
-1

一般来说,当您的函数到达 return 语句时,它将终止并 return 给定值。